我的数据通用更新方法如下:
public virtual void Update(IEnumerable<string> exclude_Property,
IEnumerable<string> include_NavProperty = null,
params T[] items)
{
foreach (var item in items)
{
_entities.Entry(item).State = EntityState.Modified;
foreach (var cn in exclude_Property)
{
_entities.Entry(item).Property(cn).IsModified = false;
}
}
_entities.SaveChanges();
}
我在这个方法中有三个参数:
exclude_property
- 用于我要在更新时排除的属性include_NavProperty
- 在主要细节模型的条件下使用for,我传递了我想用主记录编辑的导航属性名称items
- 传递模型我的问题是,由于通用性质,我不知道导航属性名称的名称,但它在我的include_NavProperty
参数中有字符串格式。
我想在导航属性上应用循环,以便一次性为更新记录标记其项目EntityState.Modified
。