181 votes

Tentative par la méthode transparente de sécurité 'WebMatrix.WebData.PreApplicationStartCode.Start()'.

Mise à jour : même chose pour mvc 4 à mvc 5.

J'ai commencé un nouveau projet mvc 4 et j'ai migré un projet mvc 3 dedans (controllers/models/scripts etc). Alors que tout se compile maintenant, j'obtiens l'erreur suivante :

La tentative de la méthode transparente de sécurité 'WebMatrix.WebData.PreApplicationStartCode.Start()' d'accéder à la méthode critique de sécurité 'System.Web.WebPages.Razor.WebPageRazorHost.AddGlobalImport(System.String)' a échoué.

Je ne trouve rien sur le web concernant cette erreur. L'erreur se produit avant d'arriver au démarrage de l'application.

J'ai essayé de réinstaller tous les assemblages avec nuget, de mettre un web.config 'propre', sans succès.

Quelqu'un a-t-il déjà eu ce problème ?

250voto

Michael Points 1028

Pour moi, cette erreur était due au fait que je n'avais PAS installé Microsoft.AspNet.WebHelpers après la mise à jour de MVC 4 à MVC 5. Le problème a été corrigé en installant le paquet NuGet

Install-Package -Id  Microsoft.AspNet.WebHelpers

1 votes

Cela a résolu le problème pour moi ; cela a créé quelques problèmes d'espace de nom avec mon fichier d'espace de nom. Resources mais je l'ai changé en Properties.Resources.xxxxx et les problèmes ont été résolus.

2 votes

J'ai lancé cette commande et ça n'a pas marché... mais heureusement, j'ai vu que dans une autre réponse, il y a une deuxième commande à lancer : stackoverflow.com/a/22587521/482256

0 votes

Cela a fonctionné pour moi, mais j'avais également besoin des éléments suivants dans les liaisons d'assemblage code <dependentAssembly> <assemblyIdentity name="WebMatrix.WebData" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> code

204voto

Anushka Points 568

Si vous obtenez l'erreur

La tentative de la méthode transparente de sécurité 'WebMatrix.WebData.PreApplicationStartCode.Start()' d'accéder à la méthode critique de sécurité 'System.Web.WebPages.Razor.WebPageRazorHost.AddGlobalImport(System.String)' a échoué.

Afin de résoudre ce problème, installez ce paquet en utilisant le gestionnaire de paquets NuGet.

Install-Package Microsoft.AspNet.WebHelpers

Après cela, vous obtiendrez probablement une autre erreur

Impossible de charger l'assemblage WebMatrix.Data version 3.0.0.0

Pour résoudre ce problème, installez ce paquet en utilisant le gestionnaire de paquets NuGet.

Install-Package Microsoft.AspNet.WebPages.Data

0 votes

J'ai eu exactement la même erreur lors de la mise à niveau vers VS 2015 RTM. Le même code fonctionnait très bien avec VS 2013, la seule différence étant un nouveau fichier .config que 2015 génère pour IIS et que je soupçonne IISExpress de 2013 d'ignorer. Cette réponse a corrigé ce cas aussi, ajouter les deux nugets.

0 votes

Il convient de mentionner que je n'ai pas du tout réussi à faire fonctionner mon site Web avec VS2015 RTM. L'installation de Microsoft.AspNet.WebHelpers a corrigé le YSOD, mais j'ai ensuite obtenu un timeout dû à des droits d'accès sql. Le même code s'est exécuté sans problème dans VS2013.

1 votes

J'ai rencontré ce problème en utilisant VS 2013 Express Edition lors de la mise à niveau de ASP .NET MVC 4 à ASP .NET MVC 5. Cela a été utile puisque @Anushka a raconté le deuxième problème avec une solution.

19voto

Alex Dresko Points 1604

Pour tous ceux qui atterrissent ici et qui essaient de passer de MVC 4 à MVC5, j'ai pu résoudre ce problème en suivant les instructions à l'adresse suivante 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 .

J'ai également dû installer le paquet "Microsoft.AspNet.WebApi.WebHost" à partir de nuget. Mais c'est tout.

Oh, et j'ai dû créer cet appSetting : <add key="owin:AutomaticAppStartup" value="false" />

)

14voto

Paul Points 726

J'ai essayé toutes les solutions ci-dessus et cela ne fonctionnait toujours pas, jusqu'à ce que je découvre que l'élément de compilation web.config faisait référence à la version 2.0.0.0 de WebMatrix.Data et WebMatrix.WebData. La modification de la version de ces entrées dans le web.config en 3.0.0.0 m'a aidé.

11voto

Edward Olamisan Points 178

J'ai été confronté à un problème similaire lors de la mise à jour du site. mvc 4 a mvc 5 :

La tentative de la méthode transparente de sécurité 'System.Web.WebPages.Administration.SiteAdmin.RegisterAdminModule()' d'accéder à la méthode critique de sécurité 'System.Web.WebPages.ApplicationPart..ctor(System.Reflection.Assembly, System.String)' a échoué.

La case à cocher Supprimer les fichiers supplémentaires dans la boîte de dialogue de publication a résolu le problème pour moi.

0 votes

J'ai eu cette erreur dans mon application hébergée SharePoint 2013 Provider (ASP.NET MVC 5, déployé sur Azure), "supprimer les fichiers supplémentaires" dans la boîte de dialogue de publication l'a résolu pour moi aussi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X