ホームページ > バックエンド開発 > C++ > Entity Framework 6 で「ストアの更新、挿入、または削除ステートメントが予期しない数の行に影響しました」を解決する方法は?

Entity Framework 6 で「ストアの更新、挿入、または削除ステートメントが予期しない数の行に影響しました」を解決する方法は?

Barbara Streisand
リリース: 2025-01-07 08:22:40
オリジナル
750 人が閲覧しました

How to Resolve

Entity Framework 6 レコード更新での同時実行例外の解決

Entity Framework 6 を使用してレコードを更新しようとすると、「Store update、insert、またはdelete ステートメントは予期しない数の行に影響を与えました。」このエラーは、レコードが最初にコンテキストに読み込まれてから変更または削除された可能性があるために発生します。

この問題を解決するには、次の方法を使用できます。

  1. SingleOrDefault メソッドを使用してデータベースからレコードを取得します。
  2. if 条件を使用してレコードが存在するかどうかを確認します。
  3. 直接必要に応じて、取得したレコードのプロパティを変更します。
  4. SaveChanges メソッドを使用して、変更をデータベースに保存します。

このアプローチを示す更新されたコード サンプルを次に示します。

using (var db = new MyContextDB())
{
    var result = db.Books.SingleOrDefault(b => b.BookNumber == bookNumber);
    if (result != null)
    {
        result.SomeValue = "Some new value";
        db.SaveChanges();
    }
}
ログイン後にコピー

この更新されたコードはレコードを取得し、新しい値を適切なプロパティに割り当て、変更を保存します。取得したレコードを直接変更すると、レコードを明示的に添付したり、エンティティの状態を設定したりする必要がなくなり、同時実行例外が解決されます。

以上がEntity Framework 6 で「ストアの更新、挿入、または削除ステートメントが予期しない数の行に影響しました」を解決する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート