Automapper配置缺失

时间:2015-03-31 22:21:25

标签: c# asp.net-mvc automapper global-asax application-start

我现在已经挣扎了好几天,但有一个很奇怪的问题。我在静态类中注册了一些Automapper映射,如下所示:

public static class AutomapperConfig
{
    public static void Configure()
    {
        Mapper.CreateMap<Person, EditPersonViewModel>();
        Mapper.CreateMap<User, EditUserViewModel>();
    }
}

此类本身是从global.asax中的application_start调用的。 到目前为止一切顺利,因为在我的开发环境中一切正常。

在我们的生产环境中,我们遇到了一些我们无法解释的行为。一段时间后,应用程序开始抛出这些异常:

  

缺少类型地图配置或不支持的映射

这很奇怪,因为映射存在不错。修复此问题的快速解决方法是回收应用程序池,从而使application_start再次运行。

我们怀疑在应用程序池空闲超时后重新启动应用程序后出现问题。但遗憾的是,我们无法通过减少IIS空闲超时来重现该问题。

顺便说一下,我们已经排除了其他一些可能的原因:

  1. AutomapperConfig类不是静态的
  2. 我们使用一些Autofac来注册Automapper地图,但由于我们认为这可能是一个问题,我们删除了Autofac部分
  3. 对这个问题的原因有什么想法?

0 个答案:

没有答案