1

私の意図は、linq to sql を使用して Windows Phone 用の一般的な (C# の意味ではない) データベース モデルを作成することです。このようなモデルのユーザーは、データ オブジェクト タイプ (Table 属性でマークされたクラス) の配列をモデルのコンストラクターに渡すことができる必要があります。その後、モデルは関連するテーブルをデータベースに追加し、CRUD 操作用の API を提供する必要があります。

しかし、データベースにテーブルを追加するには、データ コンテキスト (DataContext クラスから継承されたクラス) で各テーブルをプロパティとして宣言する必要があることがわかりました。それは恥ずかしいです。この事実は、私のアイデアが実現不可能であることを意味しますか? ランタイムで DataContext ベースのプロパティを明らかに追加できないためです。

だから私の質問は、私の判断は正しいですか?はいの場合、この問題を解決するための回避策はありますか?

前もって感謝します。

編集:誰かが最終的にこれに気付くため、より良い質問のタグ付け。

4

1 に答える 1

1

厳密に型指定された (テーブルごとにプロパティをDataContext継承して宣言するクラス)を使用する必要はありません。DataContext代わりに次のようなことができます

var context = new DataContext("connection string", new AttributeMappingSource());

var table = context.GetTable<T>();

属性でTマークされたタイプです。Table

于 2012-12-27T15:17:50.957 に答える