8

簡単な質問ですが、1 つのエンティティを更新するときに Entity Framework でこのクエリを実行することは可能ですか?

update test set value = value + 1 where id = 10
4

3 に答える 3

5

実際にはこのフォームの下ではありません。

基準に一致するすべてのエンティティを選択し、それらを foreach して更新する必要があります。

セットが巨大になる可能性があるため、DB で適切に処理するものを探している場合は、SQL を直接使用する必要があります。(EF に、Linq To SQL のように UPDATE クエリを直接実行する方法があるかどうかは覚えていません)。

于 2009-03-16T20:28:12.070 に答える
3

そうあるべきです、それは一般的にもう少し制限されるでしょう.

var myEntity = context.First(item => item.id == 10);
myEntity.value += 1;
context.SaveChanges();

同様の SQL を生成する必要がある場合は、プロファイラーを監視して、実際に生成されている SQL を確認できますが、ステートメントと非常によく似ている必要があります。

于 2009-03-16T20:16:58.353 に答える