2

ローカライズ文字列をデータベースに保存しています。私たちが構築している多言語アプリケーションにはローカリゼーションが必要です。データ レイヤーは WCF サービスの背後にあり、すべてのデータはこの WCF チャネルを介して送信されます。

Slivlerlight アプリケーションがユーザーのブラウザーに表示される前に、翻訳を読み込む必要があります。したがって、これを使用してデータをプリロードすることは、最も論理的な方法です。しかし、Silverlight の非同期呼び出しでは、Silverlight の読み込み後に結果が読み込まれるため、データベースから翻訳文字列を読み込むのに苦労しています。

この問題を解決する方法はありますか?

4

2 に答える 2

3

この問題には 2 つの解決策があります。

  1. Silverlight アプリケーションがブラウザーに表示される前にデータをロードしたい場合は、Silverlight を埋め込む前にデータを渡すしかありません。この場合、AJAXを使用してデータを取得し、SL オブジェクトを DOM に動的に追加してパラメーターを渡すことができます。私の意見では、これを行うのはかなり面倒です。
  2. SL アプリがデータを取得するまで、アプリケーション表示にする (メインのグリッドまたはコンテナーを Visiblilty="Collapsed" にする)のはどうでしょうか。タイマーを設定して、データが読み込まれたかどうかを動的にチェックし、ズームします。
于 2010-01-15T12:34:42.503 に答える
1

データベースから直接ロードすることは、ローカリゼーション(翻訳の問題)を解決する正しい方法ではないことがわかりました。翻訳はあまり変更されないものなので、XMLファイルを使用して翻訳を保存します。このXMLファイルは埋め込みリソースであり、新しい翻訳が追加されるたびにデータベースから生成されます。

これにより、データ幅の非同期呼び出しの読み込みに問題がなくなりました。

答えてくれてありがとう...

于 2010-01-18T14:07:49.633 に答える