是DNN模块开发和使用MVC和Linq的新手。已经构建了一个类和控制器,允许我在数据库的表中创建记录。谁能告诉我检索新创建记录的id的最佳方法?用于创建记录的控制器部分如下所示。
class BlockController
{
public void CreateBlock(Block b)
{
using (IDataContext ctx = DataContext.Instance())
{
var rep = ctx.GetRepository<Block>();
rep.Insert(b);
}
}
}
从代码
调用控制器 var bC = new BlockController();
var b = new Block()
{
SectionId = int.Parse(ddlPickSection.SelectedValue),
PlanId = int.Parse(ddlPickPlan.SelectedValue),
BlockName = bId,
BlockDesc = "",
xPos = bX,
yPos = bY,
width = arrBWidths[i],
ModuleId = ModuleId,
CreatedOnDate = DateTime.Now,
CreatedByUserId = UserId,
LastModifiedOnDate = DateTime.Now,
LastModifiedByUserId = UserId,
};
bC.CreateBlock(b);
由于
答案 0 :(得分:1)
当您提交更改(在DB中插入记录)时,ID将在b对象中可用:
...
rep.InsertOnSubmit(b);
ctx.SubmitChanges();
int desireID = b.id;