エンティティ内の特定の列が保存/更新されないという腹立たしい問題があります。更新する各プロパティを現在の場所に手動で割り当てるなど、行を更新するさまざまな方法を試しました (以下のコード ブロックを参照)。2 つの列 (absent_type_id と point_value) が期待どおりに更新および保存されますが、何をしても「説明」列は保存されません。
デバッガーをチェックして、db.SaveChanges(); の前の値を確認しました。新しい値に設定されていることを確認しました。ただし、保存後に行を選択 (およびデータベースをチェック) すると、他の値が更新されていることが示されますが、説明は元の状態に戻ります...これはなぜでしょうか?
[HttpPost]
public JsonResult UpdateOccurrence(int occ_id,
string absent_type,
string description,
int point_value)
{
try
{
// Get id for the absent type
int absent_type_id = db.AT_absent_types.Single(a => a.absent_type == absent_type).absent_type_id;
var occurrenceToUpdate = new AT_occurrences
{
occ_id = occ_id,
absent_type_id = absent_type_id,
description = description,
point_value = point_value
};
db.AT_occurrences.Attach(occurrenceToUpdate);
db.SaveChanges();
//return call omitted
}
catch (Exception ex)
{
return Json(new {Result = "ERROR", Message = ex.Message});
}
}
前述したように、point_value と Absent_type を投稿してエンティティを完全に保存および更新すると、説明は保存されません! 理由がわかりません。どんな助けや洞察も大歓迎です-これは私を夢中にさせています! 乾杯!