asp.net – 实体框架删除子对象
发布时间:2020-05-24 08:24:40 所属栏目:asp.Net 来源:互联网
导读:我有两个没有任何级联删除的表.我想删除所有子对象的父对象.我是这样做的 //get parent objectreturn _dataContext.Menu.Include(ChildMenu).Include(ParentMenu).Include(Pictures).FirstOrDefault(m = m.MenuId == id);//then i loop all c
|
我有两个没有任何级联删除的表.我想删除所有子对象的父对象.我是这样做的 //get parent object
return _dataContext.Menu.Include("ChildMenu").Include("ParentMenu").Include("Pictures").FirstOrDefault(m => m.MenuId == id);
//then i loop all child objects
var picList = (List<Picture>)menu.Pictures.ToList();
for (int i = 0; i < picList.Count; i++)
{
if (File.Exists(HttpContext.Current.Server.MapPath(picList[i].ImgPath)))
{
File.Delete(HttpContext.Current.Server.MapPath(picList[i].ImgPath));
}
if (File.Exists(HttpContext.Current.Server.MapPath(picList[i].ThumbPath)))
{
File.Delete(HttpContext.Current.Server.MapPath(picList[i].ThumbPath));
}
//**what must i do here?**
//menu.Pictures.Remove(picList[i]);
// DataManager dm = new DataManager();
// dm.Picture.Delete(picList[i].Id);
//menu.Pictures.de
//_dataContext.SaveChanges();
//picList[i] = null;
}
//delete parent object
_dataContext.DeleteObject(_dataContext.Menu.Include("ChildMenu").Include("ParentMenu")
.Include("Pictures").FirstOrDefault(m => m.MenuId == id););
_dataContext.SaveChanges();
解决方法这足以设置<OnDelete Action="Cascade" /> 对于主协会在模型的CSDL part中结束.在这种情况下,您的代码将起作用. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – Infragistics WebGrid与Telerik网格
- asp.net – IIS URL重写:强制规范主机名和HTTP到HTTPS重定
- asp.net – 如何告诉IIS 6将.NET版本设置为2.0(不是1.1)创建
- asp.net-mvc-3 – MVC 3 $.ajax – 响应似乎是从部分视图缓
- asp.net – 查找应用程序根URL而不使用
- asp.net-mvc-3 – 验证隐藏的字段
- asp.net – 有没有办法在Web Api控制器中处理表单发布数据?
- 编辑并在ASP.NET Web项目中继续
- 内容管理 – ASP.NET建议[已结束]
- Asp.net MVC json还是Json.net?
