我有一个名为在基于服务的数据库类非常基本的表,看起来像这样:服务基于数据库和LINQ to SQL中,插入新行
类别ID:主键,身份
类别名称:只是一个nvarchar(max)列
我添加了一个LINQ到SQL类项目,和我的窗体的构造函数之前初始化权它:
DataClasses1DataContext dc = new DataClasses1DataContext();
现在我只是想做一些简单的事情:添加一个新的行到类别表。 我曾尝试这样的:
var c = new Category()
{
CategoryName = "test"
};
dc.Categories.InsertOnSubmit(c);
dc.SubmitChanges();
我与类别ID = 4试了两个,没有它(4将是下一个可用的ID)。
我也设置数据库的副本输出目录属性复制,如果更新。我甚至尝试从CategoryID中移除标识(尽管这不应该是一个好的解决方案),但是后来我得到了一个异常,即CategoryID不应该为null(即使将其设置为4)。
(我没有使用实体框架)。
是CategoryID设置为主键并设置为在您的数据库中自动增量?你有错误吗?如果是这样请提供。你可以把db.SubmitChanges放到try catch中,如果你没有收到错误... – Waragi
尝试dc.Categories.Add(c); dc.SaveChanges(); – techspider
你可以粘贴你的EF生成的Category类;我认为它不携带数据库的身份信息 – techspider