不再 Global.asax,但 OWIN Startup.cs
No more Global.asax, but OWIN Startup.cs
所以有人决定不再需要 global.asax,我们都应该使用 OWIN。这对我来说是新的,到目前为止我发现的所有示例将使我非常精通在任何地方显示 "hello world"。很好,因为这不是很有用。
我们现有的 REST API 都使用 global.asax 文件。看来我现在需要迁移这个。下面是我们的 Application_Start() 方法的内容:
protected void Application_Start()
{
SD.Tools.OrmProfiler.Interceptor.InterceptorCore.Initialize("UnityWebService");
log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(String.Format("{0}/{1}", System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath, "log4net.config")));
UnityConfig.RegisterComponents();
AutoMapperConfig.Configure();
GlobalConfiguration.Configuration.IncludeErrorDetailPolicy = IncludeErrorDetailPolicy.Always;
GlobalConfiguration.Configure(WebApiConfig.Register);
GlobalConfiguration.Configuration.Filters.Add(new ExceptionHandlingAttribute());
GlobalConfiguration.Configuration.Filters.Add(new ValidateModelStateAttribute());
GlobalConfiguration.Configuration.Filters.Add(new CheckModelForNullAttribute());
GlobalConfiguration.Configuration.MessageHandlers.Add(new MessageHandlerMain());
}
如何转换才能在 startup.cs 中使用?它只是直接转置到 :
public void Configuration(IAppBuilder app)
{
}
我是不是漏掉了什么技巧?
提前致谢
您可以将这些行中的大部分原封不动地移动到 Startup
class 的 Configuration
方法中。像下面这样的东西应该这样做:
public void Configuration(IAppBuilder appBuilder)
{
var config = new HttpConfiguration();
WebApiConfig.Register(config);
config.Filters.Add(new ExceptionHandlingAttribute());
// move other lines over here
appBuilder.UseWebApi(config);
}
所以有人决定不再需要 global.asax,我们都应该使用 OWIN。这对我来说是新的,到目前为止我发现的所有示例将使我非常精通在任何地方显示 "hello world"。很好,因为这不是很有用。
我们现有的 REST API 都使用 global.asax 文件。看来我现在需要迁移这个。下面是我们的 Application_Start() 方法的内容:
protected void Application_Start()
{
SD.Tools.OrmProfiler.Interceptor.InterceptorCore.Initialize("UnityWebService");
log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(String.Format("{0}/{1}", System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath, "log4net.config")));
UnityConfig.RegisterComponents();
AutoMapperConfig.Configure();
GlobalConfiguration.Configuration.IncludeErrorDetailPolicy = IncludeErrorDetailPolicy.Always;
GlobalConfiguration.Configure(WebApiConfig.Register);
GlobalConfiguration.Configuration.Filters.Add(new ExceptionHandlingAttribute());
GlobalConfiguration.Configuration.Filters.Add(new ValidateModelStateAttribute());
GlobalConfiguration.Configuration.Filters.Add(new CheckModelForNullAttribute());
GlobalConfiguration.Configuration.MessageHandlers.Add(new MessageHandlerMain());
}
如何转换才能在 startup.cs 中使用?它只是直接转置到 :
public void Configuration(IAppBuilder app)
{
}
我是不是漏掉了什么技巧?
提前致谢
您可以将这些行中的大部分原封不动地移动到 Startup
class 的 Configuration
方法中。像下面这样的东西应该这样做:
public void Configuration(IAppBuilder appBuilder)
{
var config = new HttpConfiguration();
WebApiConfig.Register(config);
config.Filters.Add(new ExceptionHandlingAttribute());
// move other lines over here
appBuilder.UseWebApi(config);
}