Method not found: '!!0[] System.Array.Empty()'

放肆的年华 提交于 2019-11-28 17:20:47

I had this situation on the production server while on development machine everything was OK.

Installing .NET Framework 4.6 on the target machine has fixed the problem.

Sorry for being late to the party, but in case someone else gets this problem via a TeamCity build, I can describe what we had to do.

.NET 4.6 was installed on our build server (but not on the application server), and the RunnerType was Visual Studio (sln) and the Visual Studio option was set to 2015.

This forced the build to use 4.6, and I needed to change the Visual Studio option to 2013 to force the build to use 4.5.2

Just For others facing this situation:

if you look in the web.config file you will realize that in <compilation> tag you have the value targetFramework set to a version below 4.6. but in fact , at build time you published your application via .NET FrameWork 4.6 or above (Corresponds to ASP.NET MVC 4.6 and above).

So if you change the value of targetFramework to 4.6 the error will change shape into :

The 'targetFramework' attribute currently references a version that is later than the installed version of the .NET Framework.

this is the real error and you will get rid of it by installing appropriate Version of .Net FrameWork in production environment of your Web App.

Updating the .NET Framework to its latest (4.7.2) resolved the issue. Thanks to @Andrey Kovalenko for solution.

But should not the error be like,

I am not sure telling each customer about updating their .NET Framework is applicable. I had this issue especially at Windows Embedded OS installed system, only at production environment.

Is there any other way to overcome the behavior, from our code base itself.?

I try these solution without success.

The solution for me was go to the application pool, turn to 2.0, execute the site on browser, see the error (because the version is wrong) and turn back to 4.0 and "voilà", I got it, the website open.

In my case, I had a corrupt .NET installation on my Windows Server 2012 R2. I had to install a more recent version of .NET (v4.7.1) and the site is working now.

In my case, I don't have access to the IIS itself and I was having this problem when I was using a single method which doesn't have anything special only things from .net 2.

The solution: I've Extracted that method and created a Class Library with .net 2.0 and it works.

Maybe it too late but I got the same problem and fixed as below. I use Visual Studio 2015 ,the configuration compilation on web.config point to .NET FrameWork 4.6 by default. I could not just edit only on the web.config file. If you can not install .NET FrameWork 4.6 on server and your application don't use it.

  1. Go to menu Debug > [Project Name] Properties > Application .
  2. choose the .NET Framework 4.5 (or any which server support and compatible your application) from Target Framwork dropdown list.
  3. Rebuild again.
Bhavesh Patel

I have downgraded 4.6.x to 4.5.2 and it worked fine.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!