EF4从存储过程
问题描述:
返回新的唯一标识符我使用EF4和MVC 2EF4从存储过程
我插入新记录到数据库中,我需要它返回的新ID值。
我的存储过程结束这样的:
SELECT SCOPE_IDENTITY() AS NewApplicationID;
这里是我的操作方法:
public ActionResult CreateApplication(ApplicationViewModel applicationViewModel)
{
if (ModelState.IsValid)
{
try
{
Mapper.CreateMap<ApplicationViewModel, Application>();
var application = (Application)Mapper.Map(applicationViewModel, typeof(ApplicationViewModel), typeof(Application));
var success = applicationRepository.InsertApplication(application);
}
catch (Exception ex)
{
}
}
return View("CreateApplication", applicationViewModel);
}
这里是我的仓库类我InsertApplication方法:
public int InsertApplication(Application application)
{
db.Applications.AddObject(application);
return db.SaveChanges();
}
我需要返回新ID的值。
我希望有人能帮忙。
谢谢。
答
我设法得到这一个整理出来。当我添加我的存储过程时,我将NewApplicationID映射到ApplicationID属性。所以插入记录后,它将ApplicationID属性设置为由SCOPE_IDENTITY()返回的值。