【发布时间】:2016-08-04 04:42:07
【问题描述】:
我从存在父子列表的视图中发布模型对象,并且我正在从数据库中获取另一个对象。所以我正在比较类似的对象
public bool ChildRecords(CheckListTemplate questList)
{
int templateId = questList.Id;
if (templateId > 0 && questList.Questions.Count() > 0)
{
var template =DBContext.CheckListTemplates.Include(p => p.Questions).SingleOrDefault(p => p.Id == templateId);
template.Name = questList.Name;
List<CheckListQuestion> delQuestions = new List<CheckListQuestion>();
foreach(CheckListQuestion q in template.Questions)
{
var question = questList.Questions.Where(x => x.Id == q.Id).FirstOrDefault();
if (question == null)
{
delQuestions.Add(q);
}
else
{
q.Question = question.Question;
q.Clause = question.Clause;
}
}
if(delQuestions.Count()>0)
{
foreach(CheckListQuestion qst in delQuestions)
{
var itemToRemove = template.Questions.Single(r => r.Id == qst.Id);
template.Questions.Remove(qst);
}
}
DBContext.Entry(template).State = EntityState.Modified;
DBContext.SaveChanges();
}
我正在更新和删除记录。如果我更新记录功能可以正常工作,但是当我删除记录并发布视图时 DBContext.Entry(template).State = EntityState.Modified; 给出错误。如何删除记录。我在代码中缺少什么。
【问题讨论】:
标签: c# asp.net-mvc entity-framework asp.net-mvc-4