在linq中删除多行c#

时间:2017-06-29 10:34:49

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

直到现在我通过写下来删除一行:

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

现在我需要从Role Permission表中删除他拥有的所有权限规则,因此我希望特定的RoleId从RolePermission表中删除多行(RolePermission表包含RoleId列)。有没有类似的方法来做到这一点?

2 个答案:

答案 0 :(得分:3)

您拥有DeleteAllOnSubmit方法:

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

答案 1 :(得分:0)

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