asp.net-mvc – 使用Automapper更新现有的实体POCO
发布时间:2020-05-23 21:49:14 所属栏目:asp.Net 来源:互联网
导读:我使用EF4 DbContext为ASP.NET MVC应用程序提供模型.我使用ViewModels向视图提供数据,使用Automapper执行EF POCO和ViewModel之间的映射. Automapper做得很好,但在ViewModel发回控制器进行更新后,我不清楚使用它的最佳方法. 我的想法是使用ViewModel中包含的密
|
我使用EF4 DbContext为ASP.NET MVC应用程序提供模型.我使用ViewModels向视图提供数据,使用Automapper执行EF POCO和ViewModel之间的映射. Automapper做得很好,但在ViewModel发回控制器进行更新后,我不清楚使用它的最佳方法. 我的想法是使用ViewModel中包含的密钥获取POCO对象.然后,我想使用Automapper使用ViewModel中的数据更新POCO: [HttpPost]
public ActionResult Edit(PatientView viewModel)
{
Patient patient = db.Patients.Find(viewModel.Id);
patient = Mapper.Map<ViewModel,Patient>(viewModel,patient);
...
db.SaveChanges();
return RedirectToAction("Index");
}
两个问题: > Find()方法返回一个代理而不是一个导致Automapper投诉的POCO.我如何获得POCO而不是代理? 解决方法如果您使用这样的Automapper,它将返回一个新的Patient对象,并且不会保留对enity框架图的引用.你必须像这样使用它:[HttpPost]
public ActionResult Edit(PatientView viewModel)
{
Patient patient = db.Patients.Find(viewModel.Id);
Mapper.Map(viewModel,patient);
...
db.SaveChanges();
return RedirectToAction("Index");
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 实体框架 – 带有实体框架的MVC 3和ASP.Net脚手架错误:没有
- asp.net-mvc – 路由:如何在url中隐藏动作名称?
- asp.net-mvc – mvc4数据注释比较两个日期
- ASP.NET拒绝访问该路径
- asp.net – MVC动态页权限使用授权属性?
- asp.net-mvc – 企业库日志记录 – 从格式中删除连字符
- 如何在ASP.NET MVC中手动设置用户的角色?
- asp.net-mvc – 每个实现的存储库模式的优缺点
- asp.net-mvc – 是否可以使用自定义错误页面与MVC网站,但不
- asp.net-mvc-3 – 使用Razor视图抛出有关DotNetOpenAuth.IE
推荐文章
站长推荐
- asp.net – 如何在CORS中解决’预检无效(重定向)
- asp.net – Googlebot导致.NET System.Web.HttpE
- asp.net-mvc – SOA vs MVC – 何时使用
- asp.net – executionTimeout和Server.ScriptTim
- ASP.Net AJAX多页面加载功能可能吗?
- ASP.NET Membership API强制更改密码
- asp.net-mvc – ASP.NET MVC应用程序自定义错误页
- asp.net – AJAX和FormsAuthentication,如何防止
- 如何使ASP.NET服务器控件获得最短的ID?
- asp.net-web-api – ASP.NET Web API – 404删除
热点阅读
