In web.config, set the <globalization/> element's responseEncoding attribute
to an encoding which includes the Euro sign.
If you are writing files, set the fileEncoding, too.
If you are reading files, set the requestEncoding, too.
Also, make sure your browser is set to auto-detect encoding.
If the browser is set to a fixed encoding, it will use whatever it's set for,
instead of UTF-8, which is the default for the .Net Framework.
I use iso-8859-1 and that displays the Euro.
See :
http://asp.net.do/test/EuroCurrency.aspx
You may need to set the correct culture, too, if you're using currency.
Here's the code for that page :
<%@ Page language="C#" debug="true" %>
<%@ Import Namespace="System.Globalization" %>
<%@ Import Namespace="System.Threading" %>
<html>
<head>
<SCRIPT runat="server">
void Page_Load(){
String OutString = "";
CultureInfo DeCulture = new CultureInfo("de-DE", false);
Thread.CurrentThread.CurrentCulture = DeCulture;
NumberFormatInfo LocalFormat = (NumberFormatInfo)NumberFormatInfo.CurrentInfo.Clone();
LocalFormat.CurrencySymbol = "DM"; // Replace currency symbol with DM sign.
Decimal myCurrency = new Decimal( 123456 );
myCurrency.ToString( "C", LocalFormat );
OutString = "Euro : " + myCurrency.ToString( "C", NumberFormatInfo.CurrentInfo );
OutString += "<br>" + "German Mark : " + myCurrency.ToString( "C", LocalFormat );
CultureInfo EnUSCulture = new CultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = EnUSCulture;
OutString += "<br>" + "US Dollar : " + myCurrency.ToString( "C", NumberFormatInfo.CurrentInfo );
CultureInfo esDOCulture = new CultureInfo("es-DO");
Thread.CurrentThread.CurrentCulture = esDOCulture;
OutString += "<br>" + "Dominican Peso : " + myCurrency.ToString("C", NumberFormatInfo.CurrentInfo);
CultureInfo nnNOCulture = new CultureInfo("nn-NO");
Thread.CurrentThread.CurrentCulture = nnNOCulture;
OutString += "<br>" + "Norwegian Krone : " + myCurrency.ToString("C", NumberFormatInfo.CurrentInfo);
Response.Write( OutString );
}
</SCRIPT>
</head>
<body>
</body>
</html>