Я работаю над одностраничным приложением изначально на ASP.Net MVC 4 Beta и EF 4.3.1. Я обновил все пакеты NuGet для MVC 4 и EF 5. Теперь всякий раз, когда я делаю вызов ApiController или DbDataController, я получаю следующее исключение:
Не удалось загрузить тип «System.Web.Http.Controllers.HttpControllerConfigurationAttribute» из сборки «System.Web.Http, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35».
at System.ModuleHandle.ResolveType(RuntimeModule module, Int32 typeToken, IntPtr* typeInstArgs, Int32 typeInstCount, IntPtr* methodInstArgs, Int32 methodInstCount, ObjectHandleOnStack type)
at System.ModuleHandle.ResolveTypeHandleInternal(RuntimeModule module, Int32 typeToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext)
at System.Reflection.RuntimeModule.ResolveType(Int32 metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments)
at System.Reflection.CustomAttribute.FilterCustomAttributeRecord(CustomAttributeRecord caRecord, MetadataImport scope, Assembly& lastAptcaOkAssembly, RuntimeModule decoratedModule, MetadataToken decoratedToken, RuntimeType attributeFilterType, Boolean mustBeInheritable, Object[] attributes, IList derivedAttributes, RuntimeType& attributeType, IRuntimeMethodInfo& ctor, Boolean& ctorHasParameters, Boolean& isVarArg)
at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeModule decoratedModule, Int32 decoratedMetadataToken, Int32 pcaCount, RuntimeType attributeFilterType, Boolean mustBeInheritable, IList derivedAttributes, Boolean isDecoratedTargetSecurityTransparent)
at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeType type, RuntimeType caType, Boolean inherit)
at System.RuntimeType.GetCustomAttributes(Boolean inherit)
at System.Web.Http.Controllers.HttpControllerDescriptor.InvokeAttributesOnControllerType(HttpControllerDescriptor controllerDescriptor, Type type)
at System.Web.Http.Controllers.HttpControllerDescriptor.InvokeAttributesOnControllerType(HttpControllerDescriptor controllerDescriptor, Type type)
at System.Web.Http.Controllers.HttpControllerDescriptor.InvokeAttributesOnControllerType(HttpControllerDescriptor controllerDescriptor, Type type)
at System.Web.Http.Controllers.HttpControllerDescriptor..ctor(HttpConfiguration configuration, String controllerName, Type controllerType)
at System.Web.Http.Dispatcher.DefaultHttpControllerSelector.InitializeControllerInfoCache()
at System.Lazy`1.CreateValue()
Согласно примечаниям к выпуску MVC 4, HttpControllerConfigurationAttribute был удален, хотя я все равно не использовал его явно.
Конфигурация контроллера: Контроллеры веб-API ASP.NET могут быть атрибутированы с помощью настраиваемого атрибута, который реализует IControllerConfiguration для настройки собственных средств форматирования, селектора действий и связывателей параметров. Атрибут HttpControllerConfigurationAttribute удален. Примечания к выпуску MVC 4
Мой вопрос в том, что может пытаться загрузить этот тип в этот момент?
Редактировать: я сейчас думаю, что это связано с тем, что биты SPA не обновлялись со времен MVC 4 Beta, и там есть атрибуты конфигурации контроллера.