我有一个表有两个字段,userid和degreeid。用户可以在此表中具有多个degreeds。当用户选择他们的学位时,我想删除数据库中已有但未被用户选择的任何学位ID。应该怎么做?我试着用这样的东西没有运气。
repo.DeleteMany(x => x.MeetingAttendeeUserID == userID&& x.EducationDegreeID userDegreeList)
谢谢, 路易斯
答案 0 :(得分:1)
你可以这样做吗?
repo.DeleteMany(x =>
x.MeetingAttendeeUserId == userID &&
x.EducationDegreeID != selectedDegreeId
);
编辑:或者这个。
repo.DeleteMany(x =>
x.MeetingAttendeeUserId == userID &&
userDegreeList.Contains(x.EducationDegreeID))
);
答案 1 :(得分:0)
我试过了
SubSonicRepository<ReportDatum> repo = new SubSonicRepository<ReportDatum>(db);
repo.DeleteMany(x => x.ReportID == Convert.ToInt32(reportID));
它什么也没做,甚至没有错误。
对于遇到此问题的人的附录: 不要在删除调用中转换,事先转换变量。
int deleteKey = Convert.ToInt32(reportID)
SubSonicRepository<ReportDatum> repo = new SubSonicRepository<ReportDatum>(db);
repo.DeleteMany(x => x.ReportID == deleteKey);
它被解雇了。
答案 2 :(得分:0)
如果你不知道Lamda表达,我会建议。创建自己的存储过程并调用它。
如果你没有时间学习它,这不会限制你使用lamda表达式。
最终你想完成你的工作。