我有以下代码,我想从表中删除“id”列不是主键的所有行。
@{
using (var db = new DataClassesDataContext())
{
var query = db.Table.Where(r => r.id == 2).ToList();
if (query != null)
{
foreach (var q in query)
{
db.Table.DeleteOnSubmit(q);
}
}
db.SubmitChanges();
}}
这会引发 System.InvalidOperationException,因为该表没有主键列。
如果不在 SQL Server 数据库中添加主键,如何才能做到这一点?
提前致谢
最佳答案
打开 LINQ 设计器。打开要从中删除记录的表的属性窗口。单击要删除的实体中的任何列,您将看到标有“主键”的属性。将要用作主键的列的值更改为 true。
P/S:这不会在您的真实表上设置主键。
关于c# - 不带主键的 LINQ DeleteOnSubmit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46294757/