2012-02-15 3 views
2

私は新しいサイトをモデル化しようとしています(これまで紙に書いてありました)、私は何が最良のアプローチかもしれないと考え始めました。サイトは多言語(少なくとも2つの言語)である必要があります。私は最近Redisのテストを始めて以来、おそらく私は、.resxファイルの代わりにRedisに言語ライブラリを格納できると考えました。.resx-filesまたはRedisの言語文字列ですか?

私はそれが可能だと知っていますが、それはそれに値するのですか?それはパフォーマンスを向上させる可能性がありますか、すでにキャッシュされた.resxファイル内の文字列であり、 "十分な"パフォーマンスを持っていますか? .resxファイルの処理方法が不足しているので、すべての入力が助けになります!

+0

。あなたは答えを見つけましたか?どのような解決策を選んだのですか? –

+1

私は私のプロジェクトにとって最も簡単なルートをとっています。私はすべての言語と言語文字列を通常のSQLデータベースに格納します。私の言語サービスから特定の文字列を要求すると、そのサービスは言語文字列のredis(私のapp-cache)に質問し、見つからなければ、sqlの文字列を取り出してキャッシュにプッシュします - データベースオブジェクトが要求されました)。 – mbaaz

+0

リリース時に翻訳をどのように更新しますか?新しい文字列を追加するためにクエリを実行しますか?あるいは、翻訳用に別のデータベースを使用し、それを開発者用と本番用の両方で使用しますか?または、より良い解決策を見つけましたか? –

答えて

0

私は最近、多言語のWebサイトで作業しています。 私はJson文字列を使用しました。 私は言語ごとに1つの文字列をデータベースに保存しています。

{ "HeaderWordWideShipping": "Wordのワイド送料/ 30日完全復帰"、 "HeaderCurrency": "通貨"、 "ComboSelectAll": "すべてを選択..." } Page_Initで

データベースから適切な文字列を選択し、値をパブリックプロパティに割り当てます。ここではいくつかのサンプルコード(私はJSONを読み取るためにNewtonsoft.Json.dllを使用):

public string PagetxtHeaderWordWideShipping { get; set; } 
public string PagetxtHeaderCurrency { get; set; } 
public string ComboSelectAll { get; set; } 
string pageTextsMaster = my json string reteived from db 

pageTextsMaster = pageTextsMaster ?? @"{"""":""""}"; //if pageTextsMaster isNull then I set an empty Json string. 

    JObject o = JObject.Parse(pageTextsMaster); 

    PagetxtHeaderWordWideShipping = (string)o.SelectToken("HeaderWordWideShipping", false); //Setting false will not throw an exception if the required value is not found 
    PagetxtHeaderCurrency = (string)o.SelectToken("HeaderCurrency"); //false is default so I do not have to repeat it. 
    ComboSelectAll = (string)o.SelectToken("ComboSelectAll"); 

、あなたがあなたのページに公共propertisを使用することができます。 は、私はデフォルトの言語のテキストにヌルを置き換えるために合体演算子を追加し、余分な安全のために:私は、同じ質問について疑問に思って

<h3><%: PagetxtHeaderWordWideShipping ?? "Word Wide Shipping/30 days Full Return"%></h3> 
+0

本当にRedisでjsonを使用しましたか?私はbooksleeveのようなライブラリについて考えていました(そしておそらくシリアル化のためのprotobuf)。 – mbaaz

関連する問題