パブリックAPIからデータを取得するSilverlight Windows Phone 7アプリケーションがあります。 、UIでデータ駆動型Silverlight WP7アプリケーションのアーキテクチャ設計
- コンテンツはすでに可能性があるコンテンツを、取得
- ある場合の代わりにロードメッセージやロードプログレスバーを設定します。私は自分自身が何度も何度も同じことの多くをやって見つけます隔離されたファイルストレージにキャッシュされている、またはHTTP要求が必要な場合
- コンテンツを取得できない場合(ネットワーク接続などなし)、エラーメッセージを表示します。
- コンテンツが取得された場合は、UI
- 次のクエリのためにメインメモリに内容を保存します
ユーザーに表示されるコンテンツは、ObservableCollection
などのデータソースから直接取得することも、データソースのクエリを使用することもできます。
Iは、理想的にのみ次のニーズを指定するためのフレームワークには、この反復プロセスを考慮したいと思います:UIに
- がロード中に表示します、失敗した場合に、成功の
- HTTPリクエストのURIメモリ
- 番目の場所をに保持するデータ構造へのHTTPレスポンスを解析する方法
- 分離ストレージ内の電子ファイルは、それが
- が存在する場合、それはたくさんのように聞こえるが、二つの文字列、3つの
FrameworkElement
のかもしれメモリに
を保持されるデータ構造にファイルの内容を解析する方法、および2つの方法は、私が現在持っているオーバーヘッドよりも小さいです。
また、データはメモリ内に保持されており、これらのコレクションの直接収集と照会のために機能する必要があります。
私の質問は以下のとおりです。
は、このすでに実装されてのような何かを持っていますか?
上記のトピックに関する私の考えは根本的に何らかの形で間違っていますか?二つの成分、ビューとモデルがあり
:ここ
は私が考えているデザインです。
ビューには、ロード、失敗、および成功のためにFrameworkElement
が与えられています。対応するモデルへの参照も与えられます。ビューはUserControl
で、UIのどこかに配置されています。
モデルのURIはデータのURI、データの解析方法、オプションでファイル名とファイルの解析方法を指定します。現在のステータス(読み込み/失敗/成功)が変わるたびに、データの取得とViewの通知を行います。ネットワークからダウンロードしたデータがキャッシュと異なる場合は、ネットワークデータが優先されます。アプリケーションが閉じるか、またはトゥーンブリンクされると、モデルはデータをキャッシュに書き込みます。
どのように表示されますか?
洞察力のあるコメントありがとうございます。あなたは、プラットフォームに組み込まれたキャッシングについて言及します。これは正確に何ですか? –
この投稿は、人々がそこで扱っていることを知っています。http://forums.silverlight.net/forums/p/115871/262895.aspx –