我在一个基于 .NET MVC3 的项目的模块中有超过 8 页。我有一个控制器来处理所有页面。当我从视图中获取值时,我必须转换为本地模型来执行业务层中的逻辑。要从 转换模型ViewModel
,我使用的是 Auto Mapper。是否有可能将 Auto Mapper 作为通用功能?
这是我正在使用的代码:
Mapper.CreateMap<WorkLoadRatioViewModel, WorkLoadRatio>();
WorkLoadRatio _workloaddata = Mapper.Map<WorkLoadRatioViewModel, WorkLoadRatio>(_vmodel);
Mapper.CreateMap<LeadTimeDayDetailsViewModel, LeadTimeDayDetails>();
LeadTimeDayDetails _leadtimedata = Mapper.Map<LeadTimeDayDetailsViewModel,LeadTimeDayDetails>(_vmodel);
有没有办法把所有的代码都只是为了调用一个通用函数?例如,
public static TModel ToModel<TModel>(TModel model,TViewModel viewmodel)
where TModel : class
{
//mapper function to return the TModel OBject.
}