2012-02-12 7 views
0

私はモデルを作成しました。これは、いくつかの異なる文字列オブジェクトを保持する1つのクラスです。私が今必要とするのは、これらのモデルオブジェクトのコレクションを作成して、ユーザーがアプリケーションにアクセスするときに表示することです。Windows Phoneのデータ集計:ベストプラクティスのアドバイス

このコレクションのサイズは約40〜50です。 ImはちょうどWindowsの電話のマンゴーでこれらのオブジェクトを定義するベストプラクティスですか?実行時にこれらの50個のオブジェクトを作成し、すべての異なるオブジェクトのデータをloooongメソッドで作成するクラスを作成するだけでよいことはわかっています。これは私がそれをしたいのではありませんが、それは本当に乱雑に見えます。

私の考えは、モデルオブジェクトのすべてのデータをxmlファイルに入力することでした。私はその後、XMLデータを読み込み、実行時にループ内でオブジェクトコレクションを作成します。私はその後、これらのオブジェクトをローカルデータベースに入力し、XMLからではなくデータベースからデータを読み込むことを考えていました。 それで、本質的に、最初に使用するアプリケーションでは、xmlからデータを読み取り、データベース に保存し、それ以降のすべてのアプリケーションでデータベースからデータを読み込みます。

これを行うには、より良い方法がありますか? xmlは最良のオプションですか?

答えて

1

約40-50個のオブジェクトがある場合は、ローカルデータベースを使用することはお勧めしません。 sqllite(Windows Phone 7.1のマンゴーでサポートされているデータベース)はSQL Serverの縮小バージョンですが、それはまだリソースホッグです。大量のデータを処理する場合にのみ使用してください。または多数のシナリオを処理する必要がある複数のテーブルで複雑な関係を持つ場合に、

データの量が少ない場合は、前述のアプローチに従って、xmlからデータを読み取り、解析してからオブジェクトを作成します。あなたはlinqをxmlに使うことができます。これはうまく動作し、困難な解析コードを作成する必要はなく、高度にメンテナンスが可能です。

(アプリケーションを起動するたびにデータを読み込む必要がないように)後で情報を保持する必要がある場合は、オブジェクトリストを隔離されたストレージに保存して後で再度読み込むことができます。常にisoストレージに送られるデータは直列化可能でなければなりません。

これは私の推奨事項です。これが役立つことを願っています!

+0

同意。ローカルデータベースはSQLiteではなくSqlCeであることに注意してください。 –

+0

良いアドバイスのように聞こえます!私はそうしようとして、何が起こるか見る。乾杯。 – funzeye