1

OK、一般的な LINQ ステートメントの作成に関する投稿をたくさん見てきましたが、これらは通常、選択クエリに基づいています。必要なのは、更新するテーブルのジェネリック パラメーターと更新する列のジェネリック パラメーターを受け取る LINQ UPDATE ステートメントです。

私が扱っているデータ モデルには数十のテーブルがあり、各テーブルには潜在的に数十の列があります。私が実際に目指しているのは、更新するテーブルと列を実行時に指定できる単一の Update ステートメントです。

たとえば、DateTime 列を 10 進数値で更新できないことは明らかなので、これらの動的に提供されるフィールドのデータ型を処理することも問題になります。

したがって、テーブル名と列名に汎用パラメーターを使用する LINQ 更新プロセスを示すコードを教えてください。

どんな助けでも大歓迎です!

4

1 に答える 1

0

DbContext で Entity Framework を指定しませんでしたが、それを使用している場合、これは非常に簡単です。次のコードは、 http://nerddinner.codeplex.com/からダウンロードできる NerdDinner サンプル内で機能するように記述されています。

このコードは、ID に基づいてディナーを検索し、address プロパティを「新しい値」に設定します。

        Dinner dinner = db.Set<Dinner>().Find(id);

        var entry = db.Entry(dinner);
        entry.Property("Address").CurrentValue = "New Value";

        db.SaveChanges();
于 2013-08-20T11:39:49.350 に答える