我想第一次使用AutoMapper ..
public static class AutoMapperWebConfig
{
public static void Configure()
{
Mapper.Initialize(config =>
{
config.AddProfile(new WebConfigurationProfile());
});
}
}
public class WebConfigurationProfile : Profile
{
public WebConfigurationProfile()
{
this.CreateMap<PovUsers, PovUserView>()
.ForMember(x => x.Name, m => m.MapFrom(p => p.PovUserName))
.ForMember(x => x.User, m => m.MapFrom(p => p.PovUserId));
}
}
我有几个项目在解决方案中。一个Web项目和一个与EntityFramework DB Context一起使用的类库(Repository)。 AutoMapper正在Global.asax初始化。
有没有办法在存储库中使用此Mapper。现在,当我尝试这样做时,我得到一个错误(缺少地图):
public IQueryable<PovUserView> GetSet() {
return this.dbSet.ProjectTo<PovUserView>(); ;
}
感谢您的帮助......
答案 0 :(得分:1)
将映射配置和配置文件放在存储库项目中的类中,如下所示:
public class AutoMapperConfiguration
{
public static void Configure()
{
Mapper.Initialize(cfg =>
{
cfg.AddProfile<GeneralMapping>();
cfg.AddProfile<CustomerMapping>();
});
}
}
并从任何要使用存储库的Web应用程序的Global.asax调用Configure的静态方法。