执行下面的代码时,我收到HTTP 500内部服务器错误。
public bool DeleteData(int dataId, string uploaderName)
{
using (DataClassesDataContext db = new DataClassesDataContext())
{
DataInfo d = db.DataInfos.Where(c => c.DataId == dataId).Single();
db.DataInfos.DeleteOnSubmit(d);
db.SubmitChanges();
}
return true;
}
这会获取“d”中的值,但在执行db.SubmitChanges();
时,我看到500错误。原因是什么? ID列是主键,也是Identity。
此外,我想知道如何在LINQ中实现“和”,如下所示:
DataInfo d = db.DataInfos.Where(c => c.DataId == DataId AND
c.UploaderName==uploaderName).Single();
答案 0 :(得分:2)
实现“和”很容易 - 毕竟这是一个C#表达式:
DataInfo d = db.DataInfos.Where(c => c.DataId == DataId &&
c.UploaderName == uploaderName).Single();
至于500错误,这几乎可以肯定是由于异常,但如果没有异常的细节,很难知道什么是错的。在尝试修复LINQ错误之前,应确保记录导致请求失败的任何异常。这将帮助您解决未来的错误。登录到位后,您应该能够告诉我们异常是什么,此时我们可以帮助您解决问题。