我首先使用代码ASP.NET C#。尝试从子表中删除一对多关系中的记录
LoginBackEnds
是父表和AccessProviders
子表。
LoginBackEnds
表包含以下字段:
用户身份,
USERLASTNAME,
USERFIRSTNAME,
AccessProviders
表包含以下字段:
ACCESSID,
ProviderId,
LoginBackEnd_UserId(LoginBackEnds
表中的UserId的外键)
使用linq查询删除语句的任何建议吗?
谢谢。
答案 0 :(得分:1)
如果您尚未获取实体,则需要删除实体:
// Get the AccessProviders to delete
IQueryable<AccessProviders> accessProviders = context.LoginBackEnds.SingleOrDefault(x => x.UserId == userId).AccessProviders;
// Delete AccessProviders
foreach(AccessProvider accessProvider in accessProviders)
{
context.AccessProviders.DeleteObject(accessProvider);
}
context.SaveChanges();
如果您想了解DeleteObject()
和Remove()
之间的区别,请参阅我的so question。