0

私は、SQL、SQLite、および C# を使用して Windows でデータベースを記述した経験が豊富で、MonoTouch.Dialog を使用してデータベース操作を行うための最良の方法を見つけようとしています。私の最後の C# プロジェクトでは、すべてのテーブルのすべてのレコードを、ミラー化されたクラスにロードしました。データベース内のテーブルには、何を更新する必要があるかを判断するために、dirty(bool) と呼ばれる追加のフィールドがあります。

dialogviewcontrollers が閉じられているときに、SQLite の更新を使用して MonoTouch.Dialog で同じことを行う必要があると思いますか? テーブル クラスを dialogviewcontrollers クラスのクラスにラップするのが賢明です。 、たとえば、各dialogviewcontrollerに対して個別のクラスを作成し、内部にデータを含めます。

ID を渡すなど、マスター詳細ビューを上下に移動するための最良の方法は何ですか。

ありがとう

アレックス

4

1 に答える 1

0

私の現在の MT.D プロジェクトでは、データベース アクセスを処理するサービス層を定義しています。オブジェクトを編集するために新しいフォームを開くときなどに、適切なデータベース行のIDを渡すために DialogViewController をサブクラス化します。新しい DVC は、サービス層を介してデータベースに対する CRUD 操作を担当します。

DVC がデータベースを更新する場合、サービス層は、変更されたオブジェクトを含む引数を持つイベントを発生させます。親 DVC イベント ハンドラーは、データの変更を通知され、UI を適切に更新できます。これは、DVC で利用可能な MT.D セクションと要素に依存しているため、たとえば要素を作成するときは、データ オブジェクトidによってインデックス付けされた Dictionary にそれらを格納します。

私にとって、これは十分に分離されたアーキテクチャを提供し、Funq DI フレームワークを使用してアプリをアセンブルします (MonoTouch 用に再コンパイルする必要があります)。他の人が MT.D アプリ内でこれをどのように処理しているか知りたいです。

于 2012-06-08T02:18:38.370 に答える