如何避免使用MVC记录冗余数据

时间:2014-05-09 19:33:19

标签: c# entity-framework

我有一个有两个属性的类(name,family)。 我已编写插入数据库的代码没有问题,但我不知道如何编写代码来检查数据是否已经存在?

我需要MVC 4或更高版本的样本。

提前致谢。

public ActionResult Create([Bind(Include="Name,Description")] ColorApplication colorapplication) 
{ 
    if (ModelState.IsValid) 
    { 
        db.ColorApplications.Add(colorapplication);      
        db.SaveChanges(); 
        return RedirectToAction("Index"); 
    } 
    return View(colorapplication); 
}

1 个答案:

答案 0 :(得分:0)

如果您想使用DbSet,可以选择Remove()RemoveRange()

你可以删除一个:

using (PersonContext db = new PersonContext())
{
    Person person = db.Persons.Where(t => t.Name == "My Name").FirstOrDefault<Person>();
    db.Persons.Remove(person);
    db.SaveChanges();
}

或者提供要删除的实体列表:

using (PersonContext db = new PersonContext())
{
    List<Person> persons = db.Persons.Where(t => t.Name == "My Name").ToList();
    db.Persons.RemoveRange(persons);
    db.SaveChanges();
}

如果您需要更具体的内容,也可以使用原始SQL语句:

DELETE FROM PERSON WHERE NAME = 'My Name'