【问题标题】:Missing Type Map Configuration Or Unsupported Mapping AutoMapper缺少类型映射配置或不支持的映射 AutoMapper
【发布时间】:2019-03-01 07:31:56
【问题描述】:

我有这个代码:

public ActionResult Details(string id, string detailsDate)
{
    if (id == null)
    {
        return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
    }

    var tblPersonnel = new tblPersonnel();

    using (var _context = new ScalehouseModel()) // for disposing
    {
        tblPersonnel = _context.tblPersonnels.Find(id);
    }


    if (tblPersonnel == null)
    {
        return HttpNotFound();
    }

    Mapper.Initialize(config => config.CreateMap<tblPersonnel, PersonnelDetailsVm>());
    PersonnelDetailsVm person = Mapper.Map<tblPersonnel, PersonnelDetailsVm>(tblPersonnel);

.... // and more but the error happens on the line above.

}

ajax 成功后,我将重定向到详细信息页面,您可以在上面看到该操作。我遇到这样的运行时错误:

我研究了this 并处理了我的 EF,但仍然无法正常工作并出现同样的错误。

我需要做什么来解决这个问题?

【问题讨论】:

    标签: c# asp.net-mvc automapper


    【解决方案1】:

    为了使自动映射器工作,最好的方法是在管道中添加自动映射器配置。 这是你可以做的事情

    第 1 步:创建静态类映射配置文件,并将所有映射添加到此类中

    public static class MappingProfile
    {
        public static MapperConfiguration InitializeAutoMapper()
        {
            MapperConfiguration config = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap<tblPersonnel, PersonnelDetailsVm>();
            });
            return config;
        } 
    }
    

    第二步:为了配置,在 Global.asax.cs 的 Application_Start() 方法中注册 automapper 配置

     protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            //Add AutoMapper configuration here.
            MappingProfile.InitializeAutoMapper();
        }
    

    试一试。

    【讨论】:

    • MapperConfiguration 不适合我。使用版本 4.1.1
    猜你喜欢
    • 2017-04-16
    • 2015-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-15
    • 2015-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多