我正在尝试使用LINQ-to-SQL从我的SQL Server 2012获取自动生成的Id。
但是,当我将Id
分配给变量时,在提交后我每次都会获得Id = 0
的值。我猜这只是默认的int
值,它实际上并没有抓住自动生成的Id。关于我做错了什么或如何正确拉动它的任何想法?
模型视图
[Column(IsPrimaryKey = true, IsDbGenerated = true )]
public int Id { get; set; }
存储库
var meoData = new MEO ()
{
//a bunch of data assigned to the columns (Id is not assigned)
}
_dataContext.MEOs.InsertOnSubmit(meoData);
_dataContext.SubmitChanges();
//Create word doc
CreateWordDoc doc = new CreateWordDoc(meo);
int test = meo.Id;
meo.Id
的值始终返回0,而不是真正自动生成的Id。
答案 0 :(得分:1)
您提交的meoData将为您提供ID
尝试做
CreateWordDoc doc = new CreateWordDoc(meo);
meo.Id= meoData.id
int test = meo.Id;