[英]Asp.Net Mvc delete columns from database table
我正在尝试删除用户名=当前用户名的所有表数据。 但是lambda表达式和转换存在一些错误。“无法将源类型转换为目标类型。有帮助吗?
public JsonResult DeleteChatMessages(int id)
{
string toId = Session["SessionUserName"].ToString();
tblChat tblchats = _obj.tblChat.Where(p => p.ToId == toId);
_obj.tblChat.Remove(tblchats);
_obj.SaveChanges();
return this.Json(true, JsonRequestBehavior.AllowGet);
}
我假设您期望从Where
过滤器仅返回一个对象。 更改行,因为按照此 。 Where
子句返回IEnumerable<TSource>
。 并且您正在将其分配给非IEnumerable对象。
tblChat tblchats = _obj.tblChat.FirstOrDefault(p => p.ToId == toId)
并且您可能还需要检查Null
,然后再将其从tblChat
。
如果希望有多个对象与过滤器匹配,并希望删除所有对象,请使用@tmg方法。
_obj.tblChat.RemoveRange(_obj.tblChat.Where(p => p.ToId == toId).ToList());
过滤所需的“聊天”。
var tblchats = _obj.tblChat.Where(p => p.ToId == toId).ToList();
遍历它们并移除之后。
foeach(chat in tblchats){
_obj.tblChat.Remove(chat);
}
_obj.SaveChanges();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.