在以前的版本中,你可以做以下的的WebAPI的:ASP.NET MVC 4的WebAPI條件MessageHandlers
RouteTable.Routes.MapServiceRoute<UserService>("1.0/User/", defaultWebApiConfiguration);
RouteTable.Routes.MapServiceRoute<SomeOtherService>("1.0/SomeOtherService/", largeFilesConfig);
這將讓你有不同的服務不同的消息處理程序。這顯然是不可能的,在新的框架:ASP.NET MVC 4 WebApi Support For Multiple HttpConfigurations
或者我有項目,我在WebApiConfiguration
編輯RequestHandlers
添加處理程序,如果某些屬性存在這樣的:
該代碼是基於: http://haacked.com/archive/2011/10/19/implementing-an-authorization-attribute-for-wcf-web-api.aspx。這是不可能的,因爲MessageHandlers
的HttpConfiguration
是不可設置的。
總而言之,我的問題是如何指定某些消息處理程序僅適用於某些ApiController服務而不是全部這些服務。看起來,ASP.NET MVC 4 WebApi框架已經過度簡化了Web Api Beta的功能和可配置性。
如果您是自主主機,則可以創建多個服務。目前在Web主機中沒有辦法。 – 2012-03-29 02:59:02