Entity framework 验证输入到导航属性的数据
我如何验证或阻止用户执行Entity framework 验证输入到导航属性的数据,entity-framework,entity-framework-4,Entity Framework,Entity Framework 4,我如何验证或阻止用户执行产品.配料.添加(新配料())? 当用户这样做时,任何新的配料都会添加到配料表中。我希望它只添加现有的成分。您可以通过覆盖DBContext中的save changes方法来检查这一点 public class YourDbContext:DBContext { //...... public override int SaveChanges(){ foreach(var entry in ChangeTracker.Entries<Ingre
产品.配料.添加(新配料())
?
当用户这样做时,任何新的配料都会添加到配料表中。我希望它只添加现有的成分。您可以通过覆盖DBContext中的save changes方法来检查这一点
public class YourDbContext:DBContext
{
//......
public override int SaveChanges(){
foreach(var entry in ChangeTracker.Entries<Ingredient>())
{
var entity = entry.Entity;
if (entry.State == EntityState.Added)
{
this.Detach(entity );
}
}
base.SaveChanges();
}
}
public类YourDbContext:DBContext
{
//......
公共覆盖int SaveChanges(){
foreach(ChangeTracker.Entries()中的var条目)
{
var实体=条目。实体;
if(entry.State==EntityState.Added)
{
这个。分离(实体);
}
}
base.SaveChanges();
}
}
Niceee,但如果我想从配料数据库添加新配料,那么你不能这样做。我以为你想限制一切。不是全部,但这是一个基本情况:(