【问题标题】:delete multiple rows in linq c#在linq c#中删除多行
【发布时间】:2017-12-03 00:22:25
【问题描述】:

到目前为止,我正在通过写作删除一行:

Role role = new Role();
role = context.Roles.SingleOfDefault(p => p.Rolename == rolename);
context.Roles.DeleteOnSubmit(role);
context.SubmitChanges();

现在我需要从 Role Permission 表中删除他拥有的所有 Permission 规则,所以我想使用特定的 RoleId 从 RolePermission 表中删除 多行(RolePermission 表包括 RoleId 列)。有没有类似的方法可以做到这一点?

【问题讨论】:

标签: c# asp.net linq linq-to-sql


【解决方案1】:

你有DeleteAllOnSubmit方法:

context.RolePermission.DeleteAllOnSubmit(
           context.RolePermission .Where(p=> p.RoleId == role.RoleId));

【讨论】:

  • 首先,这个查询似乎会从 Role 表中删除多列,我想使用 roleid 从 RolePermission 表中删除多行。其次,我试过这个命令,但不幸的是,它不起作用。谢谢你的帮助!
  • @L.Achilles 修正了错字。
  • @L.Achilles 之后你调用了 save changes 吗?
【解决方案2】:

在互联网上进行了足够多的搜索后,我找到了我的问题的答案,并且在 stackoverflow 中找到了它。您可以从问题和正确答案中找到以下链接: How to Delete multiple records in Linq to Entity?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多