次のようなワークフローがあります。
using dataContext
{
load entity
int? previousFr = entity.FrSomething
entity.FrSomething = null
entity.FrSomething = previousFr
save entity
}
エンティティの保存中に FrSomething が null になり、null 値がデータベースに保存されます
これは、dataContext.SaveChanges() と FrSomething プロパティ セッターの間のコール スタックです。
UPD: エンティティ フレームワーク 4、自己追跡テンプレートです。製品カテゴリを持つエンティティ製品とコンボボックスがあります。編集用の製品と、コンボを埋めるためのカテゴリのリストを読み込みます。製品には最初に特定のカテゴリが指定されており、対応するナビゲーション プロパティが EF フィックスアップ中に設定されます。次に、コンボボックス (FrCategory = null) でカテゴリなしを選択し、最初に製品があった前のカテゴリを選択します。カテゴリを選択せずに最初のカテゴリ以外を選択すると、問題が再現されません。Product.FrCategory の代わりに Product.Category プロパティを使用してカテゴリを変更すると、問題も再現されません。
どんな助けでも大歓迎です。ありがとうございました。