6

linqpadでC#ステートメントを使用してSQL UPDATEと同等の処理を実行しようとしていますが、データが変更されないため、さらにデバッグして理由を理解することすらできません。Userテーブルはかなり標準的で、Sidを格納するための文字列だけが含まれています。

var usersWithSid = from u in Users where u.Sid != null select u;
foreach(var u in usersWithSid) {
    u.Sid = "S-1-5-21-3812666658-2998621725-2245962016-6618";
}
SubmitChanges();
usersWithSid.Dump();

私が見つけた例のほとんどは、一度に1つのレコードしか更新しないようです。なぜこれが機能しないのですか?

4

1 に答える 1

5

テーブルに主キーが定義されていますか? そうしないと、更新は黙って失敗します。

于 2012-08-30T20:47:02.740 に答える