メソッドには常に a が表示DbContext.SaveChanges()
されUnitOfWork.Commit()
ます。しかし、DbContext からエンティティをフェッチしてプロパティを変更するUnitOfWork.Commit()
と、新しいエンティティ値が検証なしでデータベースに書き戻されます。
統合された を使用することは避けますDbContext.Configuration.ValidateOnSaveEnabled = true;
。
現在、UnitOfWork-Pattern は使用していません。Service クラスのすべての挿入/更新操作で検証を実行し、検証が成功した場合、リポジトリは を呼び出しますDbContext.SaveChanges()
。
UnitOfWork.Commit()
無効なエンティティを回避するには? この回答で示唆されているように、ASP.NET MVC コントローラーで UnitOfWork オブジェクトを使用すると、作業
単位はどこに属しますか?
...検証が行われたという保証はありません。