Получить идентификатор новой записи в модуле DNN

Я новичок в разработке модулей DNN и использую MVC и Linq. Создал класс и контроллер, который позволяет мне создавать запись в таблице базы данных. Может ли кто-нибудь сказать мне, как лучше всего получить идентификатор вновь созданной записи? Ниже показана часть контроллера для создания записи.

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);

Спасибо


person HuwD    schedule 18.03.2013    source источник


Ответы (1)


Когда вы отправляете изменения (вставляете запись в БД), идентификатор будет доступен в объекте b:

...
rep.InsertOnSubmit(b);
ctx.SubmitChanges();

int desireID = b.id;
person Ehsan    schedule 19.03.2013