Avatar billede jorgen_c Nybegynder
25. april 2006 - 14:25 Der er 16 kommentarer og
1 løsning

problemer med dansk tegnsæt ved afsendelse af mail i asp.net 2.0

Jeg prøver at sende html mails indeholdene links i asp.net 2.0 og alt er helt fint undtagen æøå (som sædvanligt!).

Min mail er lavet i en aspx-side og jeg renderer den til en tekststreng med følgende metode:

    private string Render(string aspx_side)
    {
        StringWriter writer = new StringWriter();
        Server.Execute(aspx_side, writer);
        return writer.ToString();
    }

Er der nogen der kender en løsning på det?
Avatar billede the_party_dog Nybegynder
25. april 2006 - 14:37 #1
Tror du skal have fat i noget encoding og GetEncoding(1252). Kan ikke helt huske det, prøv at se om kan finde på google om det. Ellers vender jeg lige tilbage senere :o)
Avatar billede jorgen_c Nybegynder
25. april 2006 - 14:49 #2
tror du har ret, jeg fandt dette:

The GetEncoding method relies on the underlying platform to support most code pages; however, the .NET Framework natively supports some encodings.

For a list of code pages, see the Encoding class topic. Or use the GetEncodings method to get a list of all encodings.

To get the encoding associated with the default ANSI code page in the system's regional settings, use GetEncoding(0) or the Default property. To determine the default code pages used on the system, use the Windows API GetSystemDefaultLangID. To determine the current ANSI code page, use the Windows API GetACP.

GetEncoding returns a cached instance with default settings. Use the constructors of derived classes to get an instance with different settings; for example, the UTF32Encoding class provides a constructor that allows you to enable error detection.

Men hvordan bruger man det?
Avatar billede dr_chaos Nybegynder
25. april 2006 - 14:52 #3
du kan også prøve at sætte :
<globalization culture="da-DK" uiCulture="da-DK"/>
i din web.config
Avatar billede jorgen_c Nybegynder
25. april 2006 - 14:56 #4
ok, hvor er det den skal stå henne
Avatar billede dr_chaos Nybegynder
25. april 2006 - 14:59 #5
i <system.web>
<globalization culture="da-DK" uiCulture="da-DK"/>
</system.web>
Avatar billede jorgen_c Nybegynder
25. april 2006 - 15:05 #6
Ingen forskel
Avatar billede jorgen_c Nybegynder
25. april 2006 - 15:06 #7
Det her står i mailen:
  Du skal bekræfte din email ved at klikke her
Avatar billede arne_v Ekspert
25. april 2006 - 15:12 #8
proev:

StringWriter writer = new StringWriter(Encoding.Default);
Avatar billede arne_v Ekspert
25. april 2006 - 15:17 #9
bekræfte er typisk UTF-8 bytes i noget som browseren tror er ISO-8859-1
Avatar billede the_party_dog Nybegynder
25. april 2006 - 15:19 #10
Arne> Vil hans Encoding.Default ikke kunne være engelsk, hvis hele hans server er sat op til rent engelsk?

Eller tager default udgangspunkt i hvad der kommer ind i strengen?

Jorgen_C> Jeg vil mene du skal prøve dette:
private string Render(string aspx_side)
    {
        StringWriter writer = new StringWriter(Encoding.GetEncoding(1252));
        Server.Execute(aspx_side, writer);
        return writer.ToString();
    }
Avatar billede jorgen_c Nybegynder
25. april 2006 - 15:21 #11
nej det kan en stringwriter ikke:
  Argument '1': cannot convert from 'System.Text.Encoding'

men jeg har fundet dette:
  StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("iso-8859-1"));
Avatar billede arne_v Ekspert
25. april 2006 - 15:30 #12
Encoding.Default default er karaktersaet ikke sprog

saert - Writer'e plejer at tage en Encoding i constructor

hm - saa tror jeg at du skal have din side markeret som UTF-8 og ikke ISO-8859-1
Avatar billede the_party_dog Nybegynder
25. april 2006 - 15:35 #13
Arne> StreamWriter tager encoding, bare ikke som det eneste argument. Der skal enten en fysisk sti til en fil, eller en stream med, sammen med en encoding.
Avatar billede arne_v Ekspert
25. april 2006 - 15:44 #14
StreamWriter != StringWriter
Avatar billede jorgen_c Nybegynder
25. april 2006 - 15:56 #15
jeg har set bekræfte og andre ord med æøå i mails jeg har modtaget fornylig ovenikøbet også fra Microsoft.dk. Det problem forsvinder sikkert aldrig.
Avatar billede jorgen_c Nybegynder
25. april 2006 - 17:06 #16
Kan man ikke beskytte æøå med noget i html med o&ring eller noget
Avatar billede jorgen_c Nybegynder
26. april 2006 - 12:03 #17
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester