我有以下功能来更新并在表格中插入记录
public DASInput UpdateDASInputTable(DASInput fileSetData, Guid programID)
{
string connectionString = GetConnectionString(programID);
BI_ProgramConfigurationEntities dataContext = new BI_ProgramConfigurationEntities(connectionString);
dataContext.DASInputs.ApplyChanges(fileSetData);
dataContext.SaveChanges(System.Data.Objects.SaveOptions.DetectChangesBeforeSave);
fileSetData = dataContext.DASInputs.FirstOrDefault();
return fileSetData;
}
当我使用DASInput类型的新对象进行第一次调用时,它会在数据库中正确插入。 (DASInput表的主键为int,并带有标识规范)。
但是第一次插入时不会返回DASInput表的主键的修改值。
因此,在每次后续调用中,都会在数据库中插入新记录。我希望在插入记录时将主键(由DB自己生成)返回给客户端。
答案 0 :(得分:0)
不是将实体添加到linq控制的数据库中的语法更多的是:
context.Table.AddObject(newStore);
//or
context.Table.Add(newStore);
context.SaveChanges();
我试探性地回答这个问题,而不是对LINQ非常了解。