Criei um novo aplicativo com o VS 2015 RC e o modelo MVC e, sem modificar nenhuma linha de código, tenho este erro:
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
Primeira vez que isso acontece comigo, então eu estou preso no momento
c#
asp.net
asp.net-mvc
asp.net-mvc-3
Luis Valencia
fonte
fonte
Respostas:
Eu tive essa situação no servidor de produção enquanto na máquina de desenvolvimento tudo estava bem.
A instalação do .NET Framework 4.6 na máquina de destino corrigiu o problema.
fonte
Desculpe por chegar atrasado à festa, mas, caso outra pessoa receba esse problema por meio de uma compilação do TeamCity, posso descrever o que tivemos que fazer.
O .NET 4.6 foi instalado em nosso servidor de compilação (mas não no servidor de aplicativos), e o RunnerType foi o Visual Studio (sln) e a opção Visual Studio foi definida como 2015.
Isso forçou a compilação a usar 4.6, e eu precisei alterar a opção do Visual Studio para 2013 para forçar a compilação a usar 4.5.2
fonte
Apenas para outros que enfrentam esta situação:
se você procurar no arquivo web.config, perceberá que na
<compilation>
tag você tem o valortargetFramework
definido para uma versão abaixo de 4.6. mas, na verdade, no momento da criação, você publicou seu aplicativo via .NET FrameWork 4.6 ou superior (corresponde ao ASP.NET MVC 4.6 e superior).Portanto, se você alterar o valor de
targetFramework
4,6, o erro mudará de forma para:esse é o erro real e você se livra dele instalando a Versão apropriada do .Net FrameWork no ambiente de produção do seu Web App.
fonte
A atualização do .NET Framework para a versão mais recente (4.7.2) resolveu o problema. Obrigado a @Andrey Kovalenko pela solução.
Mas não deveria ser o erro,
Não tenho certeza de que é aplicável a cada cliente sobre a atualização do .NET Framework. Eu tive esse problema especialmente no sistema instalado no Windows Embedded OS , apenas no ambiente de produção.
Existe alguma outra maneira de superar o comportamento, a partir da nossa própria base de código.?
fonte
Eu tento essas soluções sem sucesso.
A solução para mim foi ir para o pool de aplicativos, virar para 2.0, executar o site no navegador, ver o erro (porque a versão está errada) e voltar para 4.0 e "voilà", entendi, o site aberto.
fonte
Talvez seja tarde demais, mas eu tive o mesmo problema e resolvi como abaixo. Eu uso o Visual Studio 2015, a compilação de configuração no web.config aponta para o .NET FrameWork 4.6 por padrão. Eu não poderia apenas editar apenas no arquivo web.config. Se você não pode instalar o .NET FrameWork 4.6 no servidor e seu aplicativo não o utiliza.
fonte
No meu caso, eu tinha uma instalação .NET corrompida no meu Windows Server 2012 R2. Eu tive que instalar uma versão mais recente do .NET (v4.7.1) e o site está funcionando agora.
fonte
No meu caso, não tenho acesso ao próprio IIS e estava tendo esse problema quando estava usando um método único que não possui nada de especial, apenas coisas do .net 2.
A solução: eu extraí esse método e criei uma biblioteca de classes com o .net 2.0 e ele funciona.
fonte
Eu rebaixei 4.6.x para 4.5.2 e funcionou bem.
fonte