Mehrsprachigkeit Webprojekt

12/08/2009 - 13:28 von Andreas Kammann | Report spam
Hi, ich wollte mal wissen wie man am besten eine Mehrsprachigkeit
(Deutsch,Englisch,Spanisch,Italienisch und mehr) ohne Resourcedateien
realisiert?
Am besten wàr da wohl eine SQL Server Lösung (eh im Einsatz) . Nur müßte es
alles sehr schnell gehen (also nicht bei jedem Aufruf der Seite erst alle
Texte laden)
Was könnt ihr mir da für Lösungen empfehlen?
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
12/08/2009 - 13:45 | Warnen spam
Hallo Andreas,

"Andreas Kammann" schrieb:

Hi, ich wollte mal wissen wie man am besten eine Mehrsprachigkeit (Deutsch,Englisch,Spanisch,Italienisch und mehr) ohne
Resourcedateien realisiert?



ich mache das meist so:

[SystemTexts]
ID <PrimaryKey>
Key <UniqueKey>
...

[SystemTextLanguages]
ID <PrimaryKey>
TextId <ForeignKey auf SystemTexts.ID>
LanguageId <ForeignKey auf Languages.ID>
Name
Description


Dazu dann noch eine View, die mir die Daten zusammen ausgibt (zur besseren
Abfragemöglichkeit).

Nur müßte es alles sehr schnell gehen (also nicht bei jedem Aufruf der Seite erst alle Texte laden)



Hier bietet sich der Cache an. Ich lade die sprachbezogenen Texte einmalig
bei der ersten Anforderung einer bestimmten Sprache komplett und speichere
die im Cache. Im Durchschnitt sind das pro Sprache ca. 100-1000 Eintràge,
das ist eigentlich problemlos machbar. Nachfolgende Requests lesen dann nicht
mehr die Datenbank aus sondern holen sich die Werte direkt aus dem Cache.

Der Zugriff erfolgt dann über den Key, also bspw. SystemTexts( "<Key"> ).Name
(die entsprechenden Klassen dazu, also Collection, ...) musst Du dir natürlich
selbst bauen :)

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen