我有这个简单的代码,但它显示错误。我不知道我哪里出错了。它显示错误在最后一行。
linq_testDataContext db = new linq_testDataContext();
var remove = from aremove in db.logins
where aremove.username == userNameString && aremove.Password == pwdString
select aremove;
db.logins.DeleteOnSubmit(remove);
8条答案
按热度按时间wljmcqd81#
DeleteOnSubmit
接受单一对象。您传递的是IEnumerable<login>
。请改用DeleteAllOnSubmit
,或从结果集合中选取单一对象,如下所示:des4xlb02#
缺少用于删除所有实体foreach循环
使用方法如下
之后
最后
希望这对你有帮助。
628mspwn3#
代替:
调用
DeleteAllOnSubmit()
,如下所示:确保之后调用
db.SubmitChanges()
。您也可以使用.AsEnumerable()
,或者。但是,如果这是一个大的删除操作,在这种情况下,您可能需要考虑绕过LINQ。kkbh8khc4#
使用此代码其工作
yfwxisqw5#
尝试使用方法first(),类似于:
mrwjdhj36#
良好实践
rfbsl7qr7#
你可以试试这个,它会为你工作。
2o7dmzc58#
我认为这可以通过使用代码的where()和Tolist()来实现......考虑到db.logins是一个数据表,remove表示表中的数据行,username、Password表示要检查的列...... linq可以这样写......