Why doesn't this string format as currency?

asp.net, c#, formatting

Solution

I'm guessing strOrderTotal is a string? I think `{0:C}` only works for decimal or int types.

Problem

I have the following line: ``` //Send Email clntMailBody = clntMailBody + "Order Total: " + String.Format("{0:C}", strOrderTotal + "\n"); ``` Watch shows: ``` String.Format("{0:C}", strOrderTotal + "\n") "35\n" string ``` But it only outputs "35". I expected "$35.00" Why is this not working as intended? Thanks

Original source