Problem med globalisering i ASP och ASP.NET


Stöd för ASP.NET röst kolumn


Om du vill anpassa den här kolumnen till dina behov, vi ber dig att skicka dina idéer om ämnen som intresserar dig och problem som du vill se i framtida adresserat kunskapsbasartiklar och stöd för röst-kolumner. Med hjälp av formuläret Fråga för det kan du skicka dina idéer och feedback. Det finns också en länk till formuläret längst ned i den här kolumnen.

Introduktion


Välkommen! Det här är Sukesh Khare med Microsoft ASP.NET-utvecklare Support team. Det här är första gången som jag har skrivit en kolumn med stöd för röst. Jag ser fram emot att redigering flera sådana kolumner under kommande månader.

För den här månadens krönika ska vi diskutera globalisering problem i Active Server Pages (ASP) och ASP.NET, problem som vi möter i ASP, hur saker har ändrats i ASP.NET 1 x och vad har hänt med ASP.NET 2.0 på framsidan globalisering.

Obs! Om du stöter på en term som du inte förstår finns i avsnittet ordlista längst ned i den här kolumnen.

Problem med globalisering i ASP

Det fanns inget strukturerat stöd för utveckling av program för globala användare innan ASP.NET. Under den tidiga utvecklingen av ASP spridda utvecklare som själv hitta endast stöd för globalisering i operativsystem, webbläsare, ASP och backend-system. Men observeras vi sällan någon automatisk anslutning mellan programmen. Lyckligtvis vi förstår begrepp som teckenuppsättningar, teckentabeller, webbläsarens språk och teckensnitt som vi kan utnyttja för att utveckla program för globala användare.

Det skulle vara för svårt att dela in i kategorier som alla globalisering problem för oss i ASP.NET har sett. I stället ska jag lista över ett antal begrepp som berör flera av dessa problem.

Uppsättningar med tecken och kodsidor

Vi vet alla att tecken på vår datorskärm är bara en serie byte. Byte-serien kan skapas och tolkas på många olika sätt. Om tolkning används en kodning som skiljer sig från den kodning som en byte-array skapades med, visas tolkningen som skräp. Teckenuppsättningar (charsets) kodningsformat som oftast används av webbläsare. Egenskapen Codepage är lämpligare för serversidan konverteringar är en omräkningstabell som anger hur tecken kodas.

Webbläsare koda formuläret Bokför data enligt den aktuella teckenuppsättningen. Om den aktuella teckenuppsättningen är "windows 1256," byte-överföring till servern också kodas som "windows 1256."

När ASP tolkas byggs inte formuläret och Querystring samlingar tills de refereras i koden. När de byggs omvandlas datatypen string enligt aktuella teckentabellen till Unicode. (Som standard både ASP och ASP.NET bearbeta innehåll med hjälp av Unicode-format). Det är mycket viktigt att du anger rätt teckentabell innan du refererar till samlingar; Annars kan Unicode-representationen i minnet är inte rätt.

Om du vill ange en teckentabell Använd Session.Codepage eller Response.Codepage. Response.Codepage är endast tillgänglig i Microsoft Internet Information Services (IIS) 5.1 eller senare versioner. Information om heltalsvärdena (vilket motsvarar teckenuppsättningen) att vi skulle ange dessa egenskaper på följande Microsoft-webbplats:Till exempel om du vill ange teckentabell för arabiska, använder du följande kod:
Session.Codepage = 1256
Response.Codepage påverkar bara det aktuella svaret. Session.Codepage påverkar alla svar som gjorts av den aktuella användaren. När teckentabellen anges med någon av dessa egenskaper och Form och Querystring samlingar byggs, gör ändringen i den aktuella codepage metoden Response.Write att omvandla Unicode i minnet till den aktuella teckentabellen. Mer information om det här avsnittet finns på följande MSDN-webbplats:
Ange teckentabell för sträng konverteringar (ASP)-http://msdn2.microsoft.com/en-us/library/ms525789.aspx
Den hållbara när det gäller frågor som rör charsets och kodsidor är charset att klienten och servern codepage ska matcha.

Acceptera språk

Om ASP-utvecklare och vill veta vilka språk som en användare har angett i sin webbläsare, använder utvecklaren variabeln Request.ServerVariables ("HTTP_ACCEPT_LANGUAGE") för att hitta en lista över språk som användaren vill läsa svaret, (till exempel engelska, tyska eller indiska) och prioritetsordning som användaren vill se dessa språk i. I ASP.NET finns liknande information i Request.UserLanguages -egenskap som en matris.
Mer information om hur du använder den här informationen i ASP-kod klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
229690 hur du anger språk-ID för ASP per språk webbläsarinställningar

Visa multibyte-tecken anger i Internet Explorer

Endast kodningsformat som kan visa en multibyte-teckenuppsättning är Unicode (UTF-8). Med UTF-8, kan vi visa kyrilliska, indiska och japanska alla på samma sida. Om vi inte använder UTF-8, kan vi endast visa något av dessa språk i taget. Använd egenskapen Response.CharSet för att ange teckenuppsättningen i webbläsaren.

Statiska multibyte-tecken på en sida

Om du vill visa multibyte-tecken lagras direkt på sidan, måste vi spara sidan med viss kodning. UTF-8 är bäst, men en viss codepage (matchar teckentabellen tecken) fungerar också.

Spara en ASP-fil med hjälp av Microsoft Visual InterDev hjälper här, eftersom Visual InterDev kan bara spara i engelska ANSI- eller Unicode. En ASP-sida som sparats som Unicode inte stöds av ASP.

Du kan spara en fil i kodning i Microsoft Visual Studio .NET. Det finns två sätt att göra detta. Standardvärdet är sätt att spara filen med hjälp av den aktuella teckentabellen för användaren. Ytterligare ett sätt att spara en fil med en kodning är följande:
Klicka på Spara somArkiv -menyn. I den
Dialogrutan Spara som klickar du på den nedrullningsbara pilen på den
Knappen Spara . När du klickar på pilen visas är alternativen
Spara och Spara med kodning. När du klickar på
Spara med kodning, dialogrutan Avancerade alternativ för Spara visas där du kan välja vilken typ av kodning som du vill använda i listan över kodsidor som är installerade på datorn.


Obs! Detta ändrar kodning för spara åtgärden, men är endast en gång. Nästa spara ställs tillbaka till standardinställningen.

Om du vill ändra standardteckentabellen klickar du på Avancerade alternativ för Spara på den
Arkiv -menyn. Du kan ange standardkodning för åtgärderna till teckentabellen som du väljer i dialogrutan Avancerade alternativ för Spara .

Dessa metoder är relaterade till hur filen sparas på disk. Om du vill styra utdata för ASP, som redan diskuterat behöver vi dock Session.CodePage och Response.CharSet egenskaper. Vi kan också använda egenskapen Response.CodePage i IIS 5.1 och senare versioner.

Standard TECKENTABELLEN på servern

Standardspråk och standardteckentabellen för sidan beror på inställningarna för den. Användaren som standard. Vi hittar nyckeln internationella på registreringsdatafilen HKEY_USERS\. DEFAULT\Control Panel\International. Vi kan också ändra beteendet för det språk som valts av IIS. Mer information finns i avsnittet "IIS 5.0" i följande Knowledge Base-artikel:
306044 beteende för datum-och tidsformat skiljer sig när det öppnas från Active Server Pages

Om den inloggade användaren har samma språk som nyckeln ovan eller standard, företräde användarinställningen.

Exempel: Standardspråk har datum format har angetts som 11.1.2004, samtidigt som den inloggade användaren (med samma språk) har datumformat som 2004-11-1. 2004-11-1-inställningen börjar gälla för ASP.

(För ASP.NET, detta kan variera. I vissa installationer har ASPNET-användare sin egen profil visas under HKEY_USERS när den har lästs in. Andra, som används i. Standardprofilen. Vi kan också använda codepage-attribut i < % @ % > deklaration. Detta bör användas när filen sparas med en annan kodning sedan standard, till exempel teckentabell 932 (japanska)).

Codepage problem kontra konverteringsproblem teckensnitt: vilket är vilket?

Ibland kan hända det ett frågetecken (?) eller en ruta där tecknet ska visas.
Codepage-konverteringsproblem
När ett tecken ersätts med ett frågetecken (?), är detta uppgift att ett codepage konvertering problem har inträffat. Frågetecknet (?) är en standardteckenuppsättning för codepage-konvertering och i princip innebär att operativsystemet inte vet hur man hanterar teckenvärde och konvertera den. Värdet för tecknet ersätts med ett frågetecken (?). Detta kan innebära att tecknet har ett ogiltigt värde för teckentabellen eller teckentabellen som behövs för att konverteringen inte är installerat.
Konvertering av teckensnittsproblem
När ett tecken ersätts med en ruta, är en indikation att ett teckensnitt konvertering problem har uppstått. Detta inträffar på klientsidan när klienten inte har rätt teckensnitt installerade detta tecken ska visas korrekt. När ett tecken är från den japanska teckenuppsättningen och klienten inte har japanska teckensnitt installerade, till exempel visas japanska tecken som en ruta.

Därefter ska jag berätta om hur saker ändrats i ASP.NET 1.x och hur dessa ändringar påverkar globalisering problem i samband med ASP.NET.

Problem med globalisering i ASP.NET 1.x:

Med ASP.NET infördes tre bra saker:
  • Taggen < globalisering > i filen web.config
    Taggen < globalisering > tar oss från osammanhängande begreppen kodsidor och charsets och låter oss kontrollera de flesta varianter i ASP.NET.
  • System.Globalization-namnområde
    Namnområdet globalisering ger vi programmatiska kraften i hantering av globalisering.
  • Begreppet resursfiler har förbättrats avsevärt.
    Vi hantera inte resursfiler på sätt som vi brukade i ASP. Nu är resursfiler i form av XML-filer när vi utformar och utvecklar dem, och de finns som monterar vid körning.
Taggen globalisering konfiguration:

Två viktiga inställningar i taggen är som följer:
<globalization             requestEncoding="utf-8" 
responseEncoding="utf-8" />
Andra områden för möjliga inställningar är följande:
fileEncodingAnger standardkodning för aspx-, asmx- och ASAX-filer. Unicode- och UTF-8-filer som sparas med prefixet byte order mark (med signatur) identifieras automatiskt, oavsett värdet för fileEncoding.
KulturAnger standardkultur för bearbetning av inkommande webbegäranden (gäller metoder för klasser från namnområdet System.Globalization).
uiCultureAnger standardkultur för bearbetning av språkberoende resurssökningar (satellitsammansättningar).
Mer information om kultursträngar (värden för kultur - och uiculture) finns på följande Microsoft-webbplats:Dessa inställningar används av ASP.NET när svaret har slutförts och innan begäran är överlämnad till programmet. ResponseEncoding anges den buffert som skapas för att lagra utdata till den här kodningen. Allt som går till den här bufferten kommer att kodas enligt inställningen när det infogas i bufferten.

För requestEncoding, körningsmiljön läsa begäran och tolkas enligt inställningarna i det här avsnittet. Detta är en inställning som kan orsaka problem, men. Tabellen nedan visar bitars layouten för en giltig sekvens för UTF-8 byte.

Om värdet för tecknet hamnar i den vanliga ASCII-7 bitars, ändras inte bytevärdet. Om värdet är högre än 127, måste den följa reglerna nedan. Den inledande uppsättningen bitar visas hur många tecken i sekvensen. Varje byte efter först måste börja med den första biten anges till 1.

UTF-8 byte-layout:
ByteBITSrepresentation
170vvvvvvv
211110vvvvv 10vvvvvv
3161110vvvv 10vvvvvv 10vvvvvv
42111110vvv 10vvvvvv 10vvvvvv 10vvvvvv
Det är där problemet kommer. Om webbläsaren kodar begäran enligt en enda bytekodning (till exempel iso-8859-1), värden över 127 inte giltigt enligt ovan layout. När de läses in i buffert som UTF-8, släpps bara ogiltiga tecken från utdata.

Runtime-kodning ändringar

I händelsen Application_BeginRequest vi ändra värdet för requestEncoding och låta det träda i kraft innan begäran behandlas. För svaret är Page_PreRender -händelsen sista chansen att ändra kodningen för utdata. Även måste Observera att Response.Write lägger tecken i denna buffert som vi kallar det, så du ha rätt kodning anges innan du använder Response.Write.

Ursprungliga data är icke-Unicode: hur du fortfarande få Internet Explorer att tolka multibyte charsets?

Vi kan också göra ASP.NET fungerar som ASP om vi behöver. Om du vill göra, måste ange responseEncoding och requestEncoding windows-1252 (en mer fullständig kodning än iso-8859-1) och använda egenskapen Response.Charset för att visa texten på rätt sätt. Detta fungerar eftersom windows-1252 är en enda byte-kodningsschemat och ändrar inte de byte som läggs till i bufferten. Dubbelbyte-tecken skickas alltså som en serie av enstaka byte. Vi kan sedan hur Internet Explorer att tolka dessa bytes med hjälp av egenskapen Response.Charset . Detta kan vara nödvändigt om den ursprungliga informationen inte lagras som Unicode eller UTF-8 som ett returvärde från ett COM-objekt eller data som lagras i Microsoft SQL Server i ett icke N fält (till exempel varchar).

Problem med SQL Server och ASP.NET globalisering

Unicode-inmatning till SQL Server
Det bästa sättet att lagra data i SQL Server är att använda Unicode. När vi använder INSERT, UPDATE, etc, om det finns även en minsta risken för Unicode-data måste vi lägga till ett N före värdet. Detta anger att databasen att värdet är Unicode. Ett bra exempel på detta är ADO-objekt. De gör automatiskt om vi använder objektet Recordset för att lägga till nya poster.

Följande är ett exempel:
INSERT INTO MusicAlbum (Album_ID, [Year], Name, Artist_ID, Company_ID) VALUES (12345, 2005, N'Abida', 4653, 403)Or:
Dim t As String = "INSERT INTO MusicAlbum(Album_ID, [Year], Name, Artist_ID, Company_ID) VALUES (12345, 2005, N'" & TextBox1.Text & "', 4653, 403)"

Datum/tid som indata till SQL Server
Vi har kunskap om kulturen och språket för datum/tid tolkas i vår ASP.NET-program. Men samtidigt trycka och dra datum/tid-data till och från externa källor, riskerar vi att misinterpreting datum-och tidsformat. Detta beror på att vi inte alltid garantera kultur och språket för den externa källan ska vara densamma som i våra program. I SQL Server kan det lösas med hjälp av ' aktuellt språk' attribut i connectionstring anslutningen upprättas till SQL-databasen. Vi kan erbjuda samma språkinställningen i connectionstring är kultur i våra program. Detta skyddar oss från risken för feltolkning, eftersom SQL Server accepterar alltid och skickar datum/tid-data i samtycke med ovannämnda inställning.

System.Globalization namnområde

Det här namnområdet är kärnan i globalisering och lokalisering i.NET Framework. Huvudklass används i det här namnområdet är CultureInfo -klass. Den innehåller kultur-specifik information, datum-och tidsformat, talformat, jämförelseinformation och textinformation. Mer information om klassen CultureInfo finns på följande MSDN-webbplats:

Neutral kulturer jämfört med vissa kulturer

En neutral kultur är en kultur som är associerad med ett språk, men inte ett visst land eller region. En specifik kultur är kopplad både med ett språk och ett visst land.

Exempel: "DE" (neutral kultur) för tyska, men "de AT" (specifik kultur) är för tyskt språk som talas i Österrike. Neutral kulturer kan inte användas för formatering.

Aktuell tråd och kultur medvetenhet om.NET Framework-klasser

Alla klasser och metoder i.NET Framework-bibliotek där förväntar vi oss utdata ska kultur-beroende har två inbyggda beteenden:
  • De låter oss ange Kulturkod när du ange argumenten att produktionen är baserad på kulturen som anges. Detta är valfritt.
  • Om detta har missats (vanligtvis är det), klasserna är intelligent för att kontrollera egenskapen Thread.CurrentThread.CurrentCulture och arbete enligt som.
Vi kan ändra den här egenskapen värdet med kod som liknar följande:
    Dim ci As CultureInfo        ci = New CultureInfo("de-AT")
Thread.CurrentThread.CurrentCulture = ci
I det här kodexemplet representerar tyska för "de" och "AT" representerar Österrike. Det innebär i det här fallet DateTime.Now(). ToString metoden returnerar datum och tid i ett format som motsvarar hur datum och tid uttrycks i tysk i Österrike.

Ramen garanterar (enligt följande) att egenskapen CurrentCulture initieras alltid:
  1. Oavsett det anges programmässigt.
  2. Om det inte uttryckligen anges av programmeraren egenskapen plockas från konfigurationsfiler (< globalisering > tagg).
  3. Om egenskapen saknas där, det är kulturen som webbservern körs. Detta är vanligtvis den neutrala kulturen som motsvarar språket i operativsystemet.

Resursfiler

Alla resx .resource filer och filer som har attributet Åtgärd skapa Inbäddade resurs som läggs till ett ASP.NET-projekt i Visual Studio .NET, kompileras automatiskt och inbäddad i programsammansättningen som en del av manifestet. Detta kan även ske manuellt med hjälp av verktyget resurs fil Generator (RESGEN) via Kommandotolken Visual Studio .NET. Mer information finns på följande MSDN-webbplats:Detta är ett allmänt begrepp som gäller när vi behöver för att hantera resurser som är kopplade till globalisering. När vi implementerar globalisering ska vi använda satellitsammansättningar.

Satellitsammansättningar

Satellitsammansättningar kan användas i ett ASP.NET-projekt när du kontrollera att följande är sant:
  1. Alla element för användargränssnitt i alla aspx-filer måste vara utrustad med id och runat = Serverattribut.
  2. Vi skapar separata resx filer. Var och en måste motsvara varje kultur som vi vill att våra program med stöd för.
  3. Vi måste bestämma en gemensam förnamn för dessa filer för t ex "Strängar".
  4. Vi namn separat resx filer med följande naming convention commonfirstname. languagecode-regioncoderesx (till exempel: Strings.de-AT.resx, Strings.en GB.resx).
  5. Vi ska ha resursfilen
    commonfirstnameresx (Strings.resx) där alla strängar som vi vill att visas i fallen som standard.
  6. Skriva kod för att identifiera användarens kultur och ange egenskapen Thread.CurrentThread.CurrentUICulture för att matcha den.
  7. Skriva kod för att läsa in resurser med hjälp av klassen resurshanteraren .
  8. Skriva kod för att hämta strängar från det inlästa objektet och tilldelar dem till element i användargränssnittet.
När du har utfört dessa steg, kompilera Strings.resx Visual Studio.NET och bädda in den i programsammansättningen (MyGlobalizationTestProjectName.dll). Men för alla resx-filer genereras en separat DLL-filer som inte har körbar kod, men bara resursdata. De faktiskt kallas satellitsammansättningar. Dessutom, Visual Studio .NET placeras i mappstrukturen liknar följande:
MyGlobalizationTestProjectName        |------- bin
|------en-US
MyGlobalizationTestProjectName.resources.dll
|------ja-JP
MyGlobalizationTestProjectName.resources.dll
|------de-AT
MyGlobalizationTestProjectName.resources.dll

Skillnaden mellan CurrentCulture och CurrentUICulture

När metoderna för klasser i namnområdet System.Globalization beror på egenskapen Thread.CurrentThread.CurrentCulture för att ge sina utdata, beror ResourceManager -klass som läser in resursen sammansättningen på egenskapen Thread.CurrentThread.CurrentUICulture för att läsa in rätt satellitsammansättning. Följande är ett exempel på C#-kod:
using System.Globalization;using System.Threading;
using System.Resources;

//Load resources.
protected ResourceManager gStrings = new ResourceManager("MyGlobalizationTestProjectName.strings", typeof(MyTestWebFormName).Assembly);

// Get the user's preferred language.
string sLang = Request.UserLanguages[0];
// Set the thread's culture for formatting, comparisons, etc.
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(sLang);
// Set the thread's UICulture to load resources
// from satellite assembly.
Thread.CurrentThread.CurrentUICulture = new CultureInfo(sLang);

private void Page_Load(object sender, System.EventArgs e)

{

if (!IsPostBack)

{
// Get strings from resource file and assign to UI elements.
head1.InnerHtml = gStrings.GetString("satellite.head1");
p1.InnerHtml = gStrings.GetString("satellite.p1");
sp1.InnerHtml = gStrings.GetString("satellite.sp1");
sp2.InnerHtml = gStrings.GetString("satellite.sp2");
butOK.Text = gStrings.GetString("satellite.butOK");
butCancel.Value = gStrings.GetString("satellite.butCancel");
}

}

Order som ASP.NET väljer satellitsammansättningar:

När du har definierat en tråd CurrentUICultureväljs ASP.NET automatiskt de resurser som matchar, i följande ordning:
  • Om det finns en satellitsammansättning med en matchande kultur används resurser från sammansättningen.
  • Om det finns en satellitsammansättning med en neutral kultur som matchar CurrentUICultureanvänds resurser från sammansättningen.
  • Om en matchning hittas för CurrentUICultureanvänds återgång resurser som lagras i den körbara sammansättningen.
Obs! Detta baseras på mer allmän resurs reserv processen. Mer information finns på följande MSDN-webbplats:

Manuellt skapa satellitsammansättningar:

Denna satellitsammansättningar används där Visual Studio .NET skapar sammansättningarna själva. Visual Studio .NET inte emellertid starkt krypterat namn satellitsammansättningar som standard. Om du vill ändra dessa alternativ skulle du behöver skapa satellit paket manuellt. Mer information finns på följande MSDN-webbplats:.

Vad har hänt med ASP.NET 2.0 på framsidan globalisering?

Utbredd användning av ASP.NET och olika typer av problem som vi ser för globalisering funktionerna i ASP.NET 2.0 är fortfarande en bit framåt. Det skulle dock vara bra att titta på vilken riktning leds globalisering metod för webbprogram kort.

Globaliseringssupport i ASP.NET 2.0 har förändrats radical och webbutvecklare har givits möjlighet att kontrollera placeringen av webbprogram lika enkelt som för Windows-baserade program. Följande är en lista över funktioner som är grunden för globalisering metod i ASP.NET 2.0:

Starkt typad resurser Kärnan i.NET Framework 2.0 versionen har stöd för starkt typad resurser som förser utvecklare med Intellisense och förenkla koden som krävs för att komma åt resurser vid körning.

Hanterad resurs Editor Visual Studio .NET 2.0 innehåller en ny resurs-redigerare med bättre stöd för att skapa och hantera resurstransaktioner inklusive strängar, bilder, externa filer och andra komplexa typer.

Generering av resursen för webbformulär Windows Forms-utvecklare har redan åtnjuter fördelarna med automatiska internationalisering. Visual Studio .NET 2005 stöder nu snabba internationalisering genom att automatiskt generera resurser för webbformulär, användarkontroller och huvudsidor.

Förbättrat körningsstöd för Resurshanteraren instanser är hanterad av körningen och lättillgängliga för serverkod genom mer tillgängliga programmeringsgränssnitt.

Uttryck för lokalisering Moderna deklarativ uttryck för webbsidor stöder mappningsposter resurs om du vill styra egenskaper, egenskaper för HTML- eller statiska innehållsområden. Dessa uttryck är också extensible ger ytterligare sätt att styra hur du kopplar lokaliserat innehåll till HTML-utdata.

Val av automatisk kultur Hantera kultur markering för varje webbfråga kan automatiskt länkas till webbläsarens inställningar.

Providern modellen En ny resurs provider modell kan utvecklare värd resurser i alternativa datakällor, till exempel platta filer och databastabeller, medan ska förbli konsekvent programmeringsmodell för att få åtkomst till dessa resurser.

Mer information om globalisering i ASP.NET 2.0 finns på följande MSDN-webbplats:
ASP.NET 2.0 lokalisering funktioner: En färsk metod för att lokalisera webbprogram
http://msdn2.microsoft.com/en-us/library/ms379546(VS.80).aspx

Slutsats

Är nu om globalisering problem i ASP och ASP.NET. Jag hoppas att denna artikel hjälper några kunder för felsökning av problem med deras globalisering i ASP och ASP.NET innan de väljer för att kontakta Microsoft Support. Jag slutar med följande trodde:

"Oavsett tid och plats du utvecklar, tycker om miljontals människor du kan stärka runt om i världen. Gör dina lösningar redo för världen! Microsofts verktyg och tekniker lättare internationella."

Vi kommer att fånga upp igen nästa månad med ett annat intressant ämne.

Tack för din tid.
Mer information om problem med globalisering i ASP och ASP.NET finns på följande Microsoft-webbplatser:
Go Global: Lokalisera dynamiska Web Apps med IIS 5.0 och SQLServer
http://msdn.microsoft.com/msdnmag/issues/01/05/global/default.aspx
Gå globala: Utforma din ASP-baserad webbplats för att stödja globalisering
http://msdn.microsoft.com/msdnmag/issues/0700/localize/default.aspx
315616 hur du identifierar ett klientspråk i en Active Server Pages-sida i IIS
http://support.microsoft.com/?id=315616
Resurser och lokalisering med hjälp av.NET Framework SDK
http://msdn2.microsoft.com/en-us/library/aa309421(VS.71).aspx
Konfigurationselement för ASP.NET < globalisering >
http://msdn2.microsoft.com/en-us/library/hy4kkhe0(vs.71).aspx
Design och implementeringsriktlinjer för webbklienter - globalisering och lokalisering
http://msdn2.microsoft.com/en-us/library/ms978628.aspx
Den officiella Microsoft webbplats – Global utveckling och datoranvändning Portal
http://msdn.microsoft.com/en-us/goglobal/bb688096
Globalisering-arkitektur för ASP.NET
http://msdn2.microsoft.com/en-us/library/aa478974.aspx
Enterprise lokalisering Toolkit - för att utveckla lokaliserade Microsoft ASP.NET-program
http://msdn2.microsoft.com/en-us/library/aa479334.aspx
Microsofts webbplats om typografi
http://www.microsoft.com/typography/default.mspx
839861 A System.Resources.MissingManifestResourceException-undantag uppstår när du försöker komma åt en lokaliserad resurs

Ordlista

ANSI Står för American National Standards Institute. I detta sammanhang representerar en specifik teckentabell för specifika språk/teckenuppsättningen. Oftast hänvisar till engelska teckentabellen (windows-1252).

ASCII En 1 byte (eller 7-bitars) kodningsschemat. Endast tecken i intervallet 0-127 är standardiserad. Tillägg till ASCII- och inte en del av standarden är i intervallet 128-255. Ett exempel på detta är skillnaden mellan det övre intervallet av OEM-ASCII-teckentabellen och VB ASCII-teckentabellen.

CharSet Inställningen används främst för Internet Explorer och webbläsare som talar om för webbläsaren hur du tolkar teckendata. Exempel: Response.charSet = "iso-8859-1".

Codepage En omräkningstabell som anger hur tecken kodas (används vanligtvis för servrar).

Globalisering Globalisering är en process för att utforma och skapa ett program så att de specifika behoven för en kultur, region eller nationella och språkliga behov kan tillgodoses. Med andra ord skapar ett program så att det kan lokaliseras senare är globalisering.

Språk/språkmiljö Språk och region specifika/formatinställningar inklusive, datum och kalenderformat, tidsformat, valutaformat, höljet, sortering och strängjämförelse, adressformaten, telefon talformat, pappersstorlekar, måttenhet skriver riktning, etc.

Språk-ID (LCID) Ett DWORD-värde som anger språk-ID och sorterings-ID. Den kan användas för att ange viss region format för ex datum/tid etc ska formateras enligt.

Kan lokaliseras Möjligheten för en ansökan att presentera innehållet för det efterfrågade språket.

Lokalisering Lokalisering är en process för att översätta ett användargränssnitt till specifika språk och nationella inställningar.

Multibyte-teckenuppsättning En teckenuppsättning som tecken som består av två eller flera byte, till exempel japanska. UTF-8 är också faller under denna kategori. (Unicode är tekniskt i denna kategori, men i Windows har en egen kategori.)

Unicode 2-byte-kodningsschemat. Windows använder Unicode internt. Alla API: er för Unicode visas som ett "W" i slutet av funktionsnamnet. Kallas även wide char; kan inte användas direkt från webbprogram.

UTF-8 En teckenkodning där ett tecken kan representeras av 1-6 byte. I Windows är intervallet 1-3 byte. Stöds inte under NT4 för webbprogram.
För mer information klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
UTF8-stöd för 175392


Bred teckenuppsättning Ett alias för Unicode. Kallas även DBCS (double-byte-teckenuppsättning), UCS-2, UTF-16.
Som alltid, gärna skicka idéer om ämnen som du vill använda i framtiden upp kolumner eller i Knowledge Base med hjälp av den
Be för det formulär.