Forum: ASP.NET |
Thema:
Sprachwechsel - Fehler in ASP.NET Anwendung |
Von:
Michael Tyralla (
18.03.2005 13:35) |
Hallo Zusammen,
bei unserem Projekt res kommt es auf zwei Win2003 IIS6.0 Webservern zu einem seeeehr seltsamen Verhalten.
Das Projekt besteht aus zwei Frames. Navigation.aspx (code weiter unten) enthält die Buttons um die Sprache zu wechseln. Der Sprachwechsel funktioniert auf der Navigation.aspx fehlerfrei.
Im zweiten Frame overview.aspx wird der Sprachwechsel nur sporadisch ausgeführt. D.h. beim wechsel von Deutsch auf Englisch werden die Sprachen in den unterschiedlichen Frames gemischt (Frame1 Englisch, Frame2 Deutsch).
Nach erneutem Sprachwechsel ebenfalls auf Englisch wird dann auch meistens der zweite Frame richtig dagestellt. Oft auch erst nach dem dritten oder vierten Sprachwechsel zur selben Sprache...
Dann haben wir wiederum zwei Testserver mit selber Softwarekonfiguration auf denen diese Anwendung ohne Problem funktioniert. Der einzige erkennbare Unterschied liegt in der Server Performance. Auf den schnellen Servern funktionierts nicht auf den langsamen schon.
Was machen wir falsch?
Gibt es bessere Methoden um mit verschiedenen Sprachen zu arbeiten?
Vielen Dank für euere Hilfe!
mfg
Michael
Genauere Angaben zum Projekt:
Projektname: res
Ressourcendatei de-DE.resx
Ressourcendatei en-US.resx
Code der einzelnen Seiten:
Seite navigation.aspx (Frame1)
Private Sub ibtnDE_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ibtnDE.Click
Session("Lang") = "de-DE"
If Session("Lang") = "de-DE" Then
SetLanguage()
Response.Write("<script> parent.rbottom.location.href = ""Overview.aspx"" </script>")
End If
End Sub
Private Sub ibtnENG_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ibtnENG.Click
Session("Lang") = "en-US"
If Session("Lang") = "en-US" Then
SetLanguage()
Response.Write("<script> parent.rbottom.location.href = ""Overview.aspx"" </script>")
End If
End Sub
Private Sub SetLanguage()
Dim mgr As New ResourceManager("res." & Session("Lang"), [Assembly].GetExecutingAssembly)
lnkEDVCall.Text = mgr.GetString("lnkEDVCall")
lnkGTCall.Text = mgr.GetString("lnkGTCall")
lnkOverview.Text = mgr.GetString("lnkOverview")
hlJHTelefonbuch.Text = mgr.GetString("hlJHTelefonbuch")
hlBedienung.Text = mgr.GetString("hlBedienung")
lblUserTXT.Text = mgr.GetString("lblUserTXT")
End Sub
Seite overview.aspx (Frame2)
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
SetLanguage()
InitializeComponent()
End Sub
Private Sub SetLanguage()
Dim mgr As New ResourceManager("res." & Session("Lang"), [Assembly].GetExecutingAssembly)
Dim i As Integer
btnAllCalls.Text = mgr.GetString("btnAllCalls")
btnAllOpenCalls.Text = mgr.GetString("btnAllOpenCalls")
btnAllEDVCalls.Text = mgr.GetString("btnAllEDVCalls")
btnOpenEDVCalls.Text = mgr.GetString("btnOpenEDVCalls")
btnAllGTCalls.Text = mgr.GetString("btnAllGTCalls")
btnOpenGTCalls.Text = mgr.GetString("btnOpenGTCalls")
For i = 0 To DataGrid1.Columns.Count - 1
DataGrid1.Columns.Item(i).HeaderText = mgr.GetString("dbgrdItem" & i)
Next
End Sub
Betreff |
Von |
Datum |
|
|
G.
Guest
|
18.03.2005 16:43 |
|
|
Re: Sprachwechsel - Fehler in ASP.NET Anwendung
Hallo, <br>vielen Dank für deine Antwort, könntest du mir deinen Lösungsvorschlag genauer erklären, ich weiss nicht wie ich ihn genau umsetzen kann. Vielleicht hast du auch Links für mich zu diesem... |
|
|
|
|
|
Michael
Tyralla
|
18.03.2005 23:43 |
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!