Linq To Sql:如何处理NewID()函数

3

嘿,我正在尝试使用 Linq To Sql 向我的 SQL Server 添加数据, 在表中,当插入新行时,数据设计为获取 NEWID(), 但是 Linq To Sql 忽略了它,导致单元格为空。

谢谢!

1个回答

9

看起来您期望在插入时自动生成一个guid值。这个列的默认值是NewID()

在您的LINQ To SQL模型中,导航到值为自动生成的表属性。右键单击,选择属性,确保自动生成的值属性设置为True。这将确保生成的INSERT语句不包括此表属性的值。

alt text

然后,您可以使用默认的自动生成值访问该新属性,如下所示:

Customer c = new Customer{FirstName="foo"};
db.Customers.InsertOnSubmit(c);
db.SubmitChanges();
string someGuid = c.MyGuidField.ToString();

@Roy:谢谢。+1 赞同你的好问题。肯定有很多其他人也遇到了这个问题,并且会从你的问题中受益。 - p.campbell

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接