For me this error was because I did NOT have Microsoft.AspNet.WebHelpers installed after updating from MVC 4 to MVC 5. It was fixed by installing the NuGet package
Install-Package -Id Microsoft.AspNet.WebHelpers
If you are getting the error
Attempt by security transparent method ‘WebMatrix.WebData.PreApplicationStartCode.Start()’ to access security critical method ‘System.Web.WebPages.Razor.WebPageRazorHost.AddGlobalImport(System.String)’ failed.
In order to fix this install this package using NuGet package manager.
Install-Package Microsoft.AspNet.WebHelpers
After that , probably you will get another error
Cannot load WebMatrix.Data version 3.0.0.0 assembly
to fix this install this package using NuGet package manager.
Install-Package Microsoft.AspNet.WebPages.Data
For anyone landing here who is trying to upgrade from MVC 4 to MVC5, I was able to resolve this issue by following the instructions at http://www.asp.net/mvc/tutorials/mvc-5/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web-api-2.
I also had to install the "Microsoft.AspNet.WebApi.WebHost" package from nuget. But that's it.
Oh, and I had to create this appSetting: <add key="owin:AutomaticAppStartup" value="false" />
:)
I tried all of the above solutions and it still wouldn't work, until I found that the web.config compilation element was referencing version 2.0.0.0 of WebMatrix.Data and WebMatrix.WebData. Changing the version of those entries in the web.config to 3.0.0.0 helped me.
I've been struggling with a similar issue when upgrading mvc 4
to mvc 5
:
Attempt by security transparent method 'System.Web.WebPages.Administration.SiteAdmin.RegisterAdminModule()' to access security critical method 'System.Web.WebPages.ApplicationPart..ctor(System.Reflection.Assembly, System.String)' failed.
The delete extra files check box in the publish dialog solved it for me.
Reinstalling Microsoft.AspNet.WebHelpers
works for me
Update-Package –reinstall Microsoft.AspNet.WebHelpers
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With