2017-05-13 6 views
0

ローカリゼーションにアクセスできない場合、値は常にデフォルト言語で表示されます。フロントエンドでカスタムローカライズされた文字列を取得するにはどうすればよいですか?

私はApp_GlobalResourcesに2つのリソースファイルを持っている:

  • Resource.resxは、名前に「Hello」と「世界」の値を持つ文字列が含まれています。

  • Resource.fr.resxが "こんにちは" の名前を持つ文字列が含まれていますし、私のカミソリテンプレートで

"モンド" の値:

<lang:string key="Resource, Resources.Resource.Hello" xmlns:lang="http://www.composite.net/ns/localization/1.0" /> 

"世界" が常にありますフランス語でページを表示しているときでも、「Monde」は決して表示されません。同じリソースを持つ

バニラasp.netのウェブサイトのテンプレートで

、カミソリテンプレートを表示中次のコード「モンド」

String cultureInfo = "fr-CA"; 
System.Threading.Thread.CurrentThread.CurrentCulture = 
System.Globalization.CultureInfo.CreateSpecificCulture(cultureInfo); 
System.Threading.Thread.CurrentThread.CurrentUICulture = new 
System.Globalization.CultureInfo(cultureInfo); 
Response.Write(ObjectInfo.Print(Resources.Resource.Hello)); 

しかし、C1の中には、「世界」になります。


どうすればよいですか?

ありがとうございます!

答えて

0

<lang:string構造体は、主にRazorのようにC#コードを直接呼び出すことができないXSLTテンプレートと関数を対象としています。

このように、あなたのRazorテンプレートのリソースをプリントアウトしようとしましたか?@Resources.Resource.Hello

+0

はい、私の文字列は "ニュートラル"言語で表示されます。 – hardingxyz

+0

あなたのページがフランス語であると言うと、これはどれくらい正確に定義されていますか?システム>言語の下に複数の言語を追加しましたか? –

+0

はい。ページがレンダリングされ、C1から来る/ fr/contentが適切にローカライズされていると表示された場合、リソースファイルのコンテンツは正しく表示されません。 – hardingxyz

関連する問題