我遇到了一个令人愤怒的问题,我的实体中的一个特定列将无法保存/更新。我尝试了许多更新行的方法,例如手动将我要更新的每个属性分配到我现在所在的位置(请参见下面的代码块)。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 完美地保存和更新实体,描述只是不会保存!我不知道为什么。任何帮助或见解将不胜感激 - 这让我发疯!干杯!