我有了一个静态类,它初始化一些AutoMapper映射一个ASP.NET MVC项目:为什么我的静态类没有在ASP.NET MVC初始化?
static class AutoMappingConfiguration
{
static AutoMappingConfiguration()
{
SetupMappings();
}
static void SetupMappings()
{
AutoMap.CreateMap<Product, ProductDTO>();
// more mappings
}
}
在静态构造函数中设置断点让我发现,当我运行该项目它从来没有击中。我必须显式调用MvcApplication.Application_Start()
方法:
AutoMappingConfiguration.SetupMappings();
有谁知道为什么这个静态类没有被ASP.NET MVC构建的?这是否与IIS的'即时编译'性质有关?如果是这样,我必须显式调用静态方法,还是有一些配置项目来初始化静态类的方法?
你不必调用一个方法,你只需要使用任何成员。 – Guffa 2010-10-29 22:02:22
是的,确切地说:以任何方式使用它。 – steinar 2010-10-29 23:25:34
哇谢谢,我从来没有意识到这一点。这是我创建的第一个静态类,我只希望构造函数执行。 – 2010-10-29 23:45:10