<p>I wanting to show prices for my products in my online store.
I'm currently doing:</p>

<pre><code>&lt;span class="ourprice"&gt;
     &lt;%=GetPrice().ToString("C")%&gt;
&lt;/span&gt;
</code></pre>

<p>Where GetPrice() returns a decimal. So this currently returns a value e.g. "£12.00"</p>

<p>I think the correct HTML for an output of "£12.00" is "<code>&amp;pound;12.00</code>", so although this is rendering fine in most browsers, some browsers (Mozilla) show this as $12.00. </p>

<p>(The server is in the UK, with localisation is set appropriately in web.config).</p>

<p>Is the below an improvement, or is there a better way?</p>

<pre><code>&lt;span class="ourprice"&gt;
     &lt;%=GetPrice().ToString("C").Replace("£","&amp;pound;")%&gt;
&lt;/span&gt;
</code></pre>

Try this, it'll use your locale set for the application:
```
```
<%=String.Format("{0:C}",GetPrice())%>
```
```