私は最初の多言語のC#サイトを開発しています。私は、コードの後ろのページから翻訳される文字列(通常は1つの単語)を格納するのに最適なオプションが何であるかを100%確信しているわけではありません。アプリケーションの状態でローカリゼーションコンテンツを保存する必要があります
サイトのフロントエンドでは、ページの言葉遣いのためにasp.netリソースファイルを使用します。この部分は問題ありません。しかし、このサイトはXMLコールを行い、XMLレスポンスは英語のみです。私はXMLで返されるすべての単語が異なる言語に分かれたExcelシートを与えられていますが、この情報をどのように保存/アクセスするのがベストかはわかりません。約80語×7言語があります。
私は、アプリケーション実行時にglobal.asaxファイルによって作成され、メモリに保存されているだけの各言語用の辞書オブジェクトを作成することを考えています。これを行うためのプラスの側面は、辞書オブジェクトは一度(IISが再起動するまで)作成する必要があり、再構築する必要なくすべてのユーザーがアクセスできますが、欠点はメモリに常時格納されている7つの辞書オブジェクトがあることです。サーバーは4GBのRAMを搭載したWin 2008の64ビット版なので、この方法を使用してメモリを使用することにも関心がありますか?
どのユーザーが、すべてのユーザーが使用するさまざまな言語の単語を保存/取得するのに最適な方法だと思いますか?
ありがとうございます。
リッチ
ご協力いただきありがとうございます。私の問題は、文字列をローカライズすることだけです。これらはコントロールには結び付けられないので、resxファイルを使用することはできません。私はできますか? –
ローカライズされた文字列をどのように使用してユーザーに表示しますか? –
私は、ページの読み込み時に、選択した言語に基づいて必要な言語の辞書オブジェクトを呼び出し、探している文字列に一致するキーを見つけると考えていました。たとえば、XMLで返された「Door」という単語を置き換えてフランス語で表示する場合は、次のようになります。Dictionary XMLWording =(Dictionary )アプリケーション["FrenchXMLWording "]; XMLWording ["Door"]のようなものです。画面に書き込む。希望は意味をなさない;) –