2014-11-17 2 views
2

Я создал простой проект WebApi, который не ссылается на MVC и все, и не требует Owin или чего-то еще, чего я еще не понимаю. Он работает нормально на IIS Express, но когда я раскрываю к облаку это говоритПочему сайт azure требует Owin?

«Не удалось загрузить файл или сборку„Microsoft.Owin“или один из его зависимостей. Манифеста определение локализованной ассамблеи не соответствует сборки (исключение из HRESULT: 0x80131040) "

Нет ссылки на Owin в любом месте.

OK. Я добавил пакет Owin, но на данный момент NuGet имеет только пакет 2.0.2.0, но по какой-то причине он требует 3.0.0.0.

[FileLoadException: Не удалось загрузить файл или сборку «Microsoft.Owin» или одну из его зависимостей. Определение манифеста размещенной сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040)]

[FileLoadException: Не удалось загрузить файл или сборку «Microsoft.Owin, Version = 3.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35» или одна из его зависимостей. Определение манифеста размещенной сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040)] System.Reflection.RuntimeAssembly._nLoad (AssemblyName имя_файла, String CodeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark & stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, булевы suppressSecurityChecks) +0 системы. Reflection.RuntimeAssembly.nLoad (AssemblyName имя_файла, строка CodeBase, фактические данные assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark & stackMark, IntPtr pPrivHostBinder, булева throwOnFileNotFound, булева forIntrospection, булевы suppressSecurityChecks) +34 System.Reflection.RuntimeAssembly.InternalLoadAssemblyName (AssemblyName assemblyRef, Доказательства assemblySecurity , RuntimeAssembly reqAssembly, StackCrawlMark & stackMark, IntPtr pPrivHostBinder, Boolean throwOnFi leNotFound, булева forIntrospection, булевы suppressSecurityChecks) +152 System.Reflection.RuntimeAssembly.InternalLoad (String assemblyString, фактические данные assemblySecurity, StackCrawlMark & stackMark, IntPtr pPrivHostBinder, булева forIntrospection) +77 System.Reflection.RuntimeAssembly.InternalLoad (String assemblyString, фактические данные assemblySecurity, StackCrawlMark & stackMark, булева forIntrospection) +16 System.Reflection.Assembly.Load (Строка assemblyString) +28 System.Web.Configuration.CompilationSection.LoadAssemblyHelper (String AssemblyName, булева starDirective) +38

[ConfigurationErrorsException : Не удалось загрузить файл или сборку «Microsoft.Owin, Version = 3.0.0.0, Culture = нейтральный, PublicKeyToken = 31bf3856ad364e35 'или одна из его зависимостей. Определение манифеста размещенной сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040)] System.Web.Configuration.CompilationSection.LoadAssemblyHelper (String AssemblyName, булева starDirective) +736 System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +217 System.Web.Configuration.CompilationSection. LoadAssembly (AssemblyInfo а.и.) +130 System.Web.Compilation.BuildManager.GetReferencedAssemblies (CompilationSection compConfig) +170 System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies(): +91 System.Web.Compilation.BuildManager.CallPreStartInitMethods (String preStartInitListPath, Boolean & isRefAssemblyLoaded) +284 System.Web.Compilation.BuildManager.ExecutePreAppStart() +153 System.Web.Hosting.HostingEnvironment.Initialize (ApplicationManager AppManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel PolicyLevel , Exception appDomainCreationException) +521

[HttpException (0x80004005): Не удалось загрузить файл или сборку «Microsoft.Owin, Version = 3.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35» или одна из его зависимостей. Определение манифеста размещенной сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040)] System.Web.HttpRuntime.FirstRequestInit (HttpContext контекст) +9930568 System.Web.HttpRuntime.EnsureFirstRequestInit (HttpContext контекст) +101 System.Web.HttpRuntime.ProcessRequestNotificationPrivate (IIS7WorkerRequest сог, HttpContext контекст) +254

я, наконец, зафиксировано, что на

  1. Добавление пакета Owin
  2. Явное Owin привязки к версии 2.0.1.0
  3. Удаление Owin из Startup.

Но это то, что я просто не понимаю. (Началось с того, что я обновил Visual Studio 2013 до обновления 4)

+0

У вас есть запись для 'Microsoft.Owin 'в web.config вашего приложения, в частности раздел bindingRedirect? – Pranav

ответ

0

OWIN - это стандартный интерфейс между веб-серверами .NET и веб-приложениями, которые Microsoft использует, поскольку они полностью «открываются с открытым исходным кодом» с помощью веб-сайта ASP.NET Стек. Я думаю, что Owin пакет стал обязательным для WEB.API проектов ASP.NET начиная с Visual Studio 2013 Update 4.

Вы можете найти более подробную информацию о Owin здесь: http://coding.abel.nu/2014/05/whats-this-owin-stuff-about/

Смежные вопросы