ASP.NET HttpContext.GetLocalResourceObject() wirft eine InvalidOperationException

Sagen wir, wir haben eine solche Website-Struktur:

App_LocalResources
|- A. aspx.resx
|- B. aspx.resx
A. aspx
B. aspx

Nun benutze ich HttpContext.GetLocalResourceObject("~/A. aspx", "Key1") in A. aspx.cs, und es funktioniert gut.
Aber wenn ich HttpContext.GetLocalResourceObject("~/A. aspx", "Key1") in B. aspx.cs, wirft es eine Ausnahme:

Die Ressourcenklasse für diese Seite wurde nicht gefunden. Bitte prüfen Sie, ob die resource-Datei vorhanden ist, und versuchen Sie es erneut.

Exception Details: System.InvalidOperationException: Die Ressourcenklasse für diese Seite wurde nicht gefunden. Bitte prüfen Sie, ob die resource-Datei vorhanden ist, und versuchen Sie es erneut.

Wie kann ich dieses problem beheben? Ich möchte Lesen Sie die lokalen Ressourcen von einer externen Seite, und das möchte ich nicht Lesen .resx-Datei selbst. Vielen Dank 🙂

UPDATE: In meinem Fall, es sind einige "data.xml" Dateien(in verschiedenen Ordnern und Elementen wie <key name='Key1' value='value1' />), und der Inhalt wird als html gerendert.

Aber die key-Namen in der data.xml sollte lokalisiert werden, bevor rendering (verschiedene data.xml enthalten verschiedene Schlüssel).

Beispielsweise die data.xml hat ein solches element:

<key name='CategoryId' value='3' />

In der Ergebnis-html-Seite, ich möchte zur Anzeige von "Kategorie Id = 3" für die en-US-Kultur, und "类别=3" für Kultur zh-CN, etc.

So, ich denke, ich kann einige Dateien nach dem Muster "data.xml.??-??.resx" in der App_LocalResources Ordner, dann verwenden Sie die HttpContext.GetLocalResource() für jeden data.xml zum abrufen der lokalisierten Tastennamen. So, wie ich nicht brauchen, um das xml Lesen mich. Ist es möglich?

InformationsquelleAutor Mouhong Lin | 2010-06-08

Schreibe einen Kommentar