asp.net-mvc – 我在哪里可以初始化Orchard模块中的AutoMapper映射?
发布时间:2020-05-24 10:37:29 所属栏目:asp.Net 来源:互联网
导读:我正忙着开发我的第一个非示例Orchard模块.它是一些控制器和视图,具有自定义(EF)数据访问,并且在很大程度上独立于Orchard内容类型和部件.通常我在Application_Start处理程序中设置映射,但由于此MVC模块中的操作将在Orchard应用程序的上下文中调用,因此我不再
|
我正忙着开发我的第一个非示例Orchard模块.它是一些控制器和视图,具有自定义(EF)数据访问,并且在很大程度上独立于Orchard内容类型和部件.通常我在Application_Start处理程序中设置映射,但由于此MVC模块中的操作将在Orchard应用程序的上下文中调用,因此我不再具有该入口点.我最明显和最直接的解决方案是将映射初始化移动到映射视图模型的静态构造函数,例如 public class ApplicantPersonalDetailsModel : MappedViewModel<Applicant>
{
static ApplicantPersonalDetailsModel()
{
Mapper.CreateMap<Applicant,ApplicantPersonalDetailsModel>().Bidirectional();
}
....
}
我怎么能这样做?有没有更好的方法在MVC3 / 4中执行此操作,或者最好是,我可以在Orchard应用程序中获取的事件或钩子也可以在应用程序启动时实现此目的? 解决方法我这样做的方法是实现IOrchardShellEventspublic class MenuOrchardShellEvents : IOrchardShellEvents
{
public void Activated()
{
Mapper.CreateMap<YSRB.Menu.Models.Records.Customer,YSRB.Menu.Models.ViewModels.CustomerViewModel>()
.ForMember(c => c.CustomerType,m => m.MapFrom(
x => (CustomerTypes)x.CustomerType
)
);
Mapper.CreateMap<YSRB.Menu.Models.ViewModels.CustomerViewModel,YSRB.Menu.Models.Records.Customer>()
.ForMember(c => c.CustomerType,m => m.MapFrom(
x => (int)x.CustomerType
)
);
}
public void Terminating()
{
//Do nothing
}
}
希望这可以帮助. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – ASP.NET MVC:获取所有控制器
- asp.net – 为什么WebMethod访问会话状态没有EnableSession
- asp.net – Orchard CMS Media中的文件大小上传限制
- ASP.NET -- WebForm -- HttpResponse 类的方法和属性
- 在asp.net中使用SQL查询中的变量(C#)
- asp.net-mvc-3 – 列模板kendo ui grid mvc动作链接
- ASP.NET MVC2与实体框架4 – AsEnumerable()或ToList()在存
- asp.net-web-api – WebAPI:403在发布网站后被禁止
- Asp.net MVC – Jquery $.ajax错误回调没有返回responseJSO
- asp.net – 如何停止插入两次的配置转换插件?
推荐文章
站长推荐
- asp.net-mvc – 在请求之间保持/缓存数据 – 常用
- asp.net – 模型在表单发布到控制器时始终为NULL
- asp.net – 如何在运行时设置ObjectDataSource选
- asp.net – 什么叫Page_Load,它是如何做的?
- asp.net-web-api – Web Api使用IDependencyReso
- asp.net-mvc – 如何在ASP.NET MVC中将多个对象传
- asp.net-mvc – ASP.NET MVC 3多个模型到单个表单
- asp.net-mvc – 启用relaxedUrlToFileSystemMapp
- ASP.NET如何验证防伪令牌
- asp.net-mvc – 在内部OnException(ExceptionCon
热点阅读
