1
데이터베이스에 존재하고 새로운 개체를 저장하는 여러 개체를 업데이트하려고하는데 작동하지 않습니까? 여기 TryUpdateModel/UpdateModel이 작동하지 않습니까?
내 코드입니다 :[HttpPost]
public ActionResult Edit(MasterModel Model)
{
DBEntities db = new DBEntities();
var reloadView = true;
for(int i = 0 ;i< Model.Emails.Count(); i++)
{
if(Model.Emails[i].ID > 0)
{
var id = Model.Emails[i].ID;
var email = db.EMAIL.Single(e=> e.ID == id);
if(TryValidateModel(Model.Emails[i], "Emails[" +i.ToString() + "]"))
{
TryUpdateModel(email, "Emails[" + i.ToString() + "]");
reloadView = false;
}
else
{
reloadView = true;
}
}
else
{
if(TryValidateModel(Model.Emails[i], "Emails[" + i.ToString() + "]"))
{
db.AddToEMAIL(Model.Emails[i]);
reloadView = false;
}
else
{
reloadView = true;
}
}
}
if(reloadView)
{
return View(Model);
}
else
{
db.SaveChanges();
return RedirectToAction("Index");
}
}
TryUpdateModel 후 내가) (db.SaveChanges를 할 경우; 참조 무결성이있는 System.Data.UpdateException을 얻습니다.
그리고 예제 에서처럼 코드를 업데이트하면 안됩니다! : S
오, 그래, 나는 또한 UpdateModel()을 대신 사용해 보았습니다.
제안 사항?
미리 감사드립니다.
건배
감사하지만 나던 내 질문에 긍정적 인 영향을 미친다. 만약 당신이 내 코드 메신저 db에서 메신저 모델 및 메신저 변경 사항을 저장 업데이 트지고 봐. 아니면 내가 보지 못한 걸보고 있니? – Gyocol
안녕하세요 당신의 코드를 삽입 (Model.Emails [i] .ID> 0) 또한 내가 편집 작업을 게시하는 이유를 이해하지 못하는 것을 참조하십시오. – ADIMO