Я создал новое приложение с VS 2015 RC и шаблоном MVC, и без изменения какой-либо строки кода у меня есть эта ошибка:
Method not found: '!!0[] System.Array.Empty()'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.MissingMethodException: Method not found: '!!0[] System.Array.Empty()'.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[MissingMethodException: Method not found: '!!0[] System.Array.Empty()'.]
SAASApp.BundleConfig.RegisterBundles(BundleCollection bundles) in C:\Proyectos\SAASApp\SAASApp\App_Start\BundleConfig.cs:29
SAASApp.MvcApplication.Application_Start() in C:\Proyectos\SAASApp\SAASApp\Global.asax.cs:18
[HttpException (0x80004005): Method not found: '!!0[] System.Array.Empty()'.]
System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +483
System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +118
System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +176
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +350
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +305
[HttpException (0x80004005): Method not found: '!!0[] System.Array.Empty()'.]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +661
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +96
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +189
В первый раз это происходит со мной, поэтому я застрял в данный момент
c#
asp.net
asp.net-mvc
asp.net-mvc-3
Луис Валенсия
источник
источник
Ответы:
У меня была такая ситуация на производственном сервере, а на машине разработки все было в порядке.
Установка .NET Framework 4.6 на целевой компьютер устранила проблему.
источник
Извините за опоздание на вечеринку, но в случае, если кто-то другой столкнется с этой проблемой через сборку TeamCity, я могу описать, что нам нужно было сделать.
.NET 4.6 был установлен на нашем сервере сборки (но не на сервере приложений), RunnerType был Visual Studio (sln), а для параметра Visual Studio было установлено значение 2015.
Это заставило сборку использовать 4.6, и мне нужно было изменить параметр Visual Studio на 2013, чтобы заставить сборку использовать 4.5.2.
источник
Только для тех, кто сталкивается с этой ситуацией:
если вы посмотрите в файл web.config, вы поймете, что в
<compilation>
теге у вас установлено значениеtargetFramework
версии ниже 4.6. но на самом деле во время сборки вы опубликовали свое приложение через .NET FrameWork 4.6 или выше (соответствует ASP.NET MVC 4.6 и выше).Поэтому, если вы измените значение
targetFramework
на 4.6, ошибка изменится на:это настоящая ошибка, и вы избавитесь от нее, установив соответствующую версию .Net FrameWork в производственной среде вашего веб-приложения.
источник
Обновление .NET Framework до последней версии (4.7.2) решило проблему. Спасибо @Andrey Kovalenko за решение.
Но не должна ли ошибка быть такой,
Я не уверен, что можно сказать каждому клиенту об обновлении их .NET Framework. У меня была эта проблема, особенно в системе с установленной ОС Windows Embedded , только в производственной среде.
Есть ли другой способ преодолеть такое поведение, исходя из самой базы кода?
источник
Я пробую это решение безуспешно.
Решение для меня заключалось в том, чтобы перейти в пул приложений, перейти на 2.0, запустить сайт в браузере, увидеть ошибку (потому что версия неправильная) и вернуться на 4.0 и "вуаля", я понял, веб-сайт открыт.
источник
Может быть, уже слишком поздно, но у меня та же проблема, и я исправил ее, как показано ниже. Я использую Visual Studio 2015, компиляция конфигурации в web.config по умолчанию указывает на .NET FrameWork 4.6. Я не мог просто редактировать только файл web.config. Если вы не можете установить .NET FrameWork 4.6 на сервер и ваше приложение не использует его.
источник
В моем случае у меня была поврежденная установка .NET на моем Windows Server 2012 R2. Мне пришлось установить более свежую версию .NET (v4.7.1), и сейчас сайт работает.
источник
В моем случае у меня нет доступа к самому IIS, и у меня возникла эта проблема, когда я использовал единственный метод, в котором нет ничего особенного, только вещи из .net 2.
Решение: я извлек этот метод и создал библиотеку классов с .net 2.0, и она работает.
источник
Я понизил 4.6.x до 4.5.2, и он работал нормально.
источник