J'essaie de créer une application Web à l'aide de Visual Studio 2015 et .NET 4.5.1. Lorsque je publie le site Web, Visual Studio crée un dossier nommé roslyn
.
Je sais qu'il est utilisé pour compiler du code à la volée, mais malheureusement, mon hébergeur ne me permet pas d'exécuter le compilateur sur son serveur.
Comment publier le site Web sans roslyn
comme la version précédente de Visual Studio?
EDIT: J'ai eu cette erreur en essayant d'accéder à mon site Web.
Il semble qu'IIS tente de s'exécuter, roslyn\csc.exe
mais mon compte d'utilisateur n'a pas l'autorisation de le faire. Avec la version précédente de Visual Studio, cette erreur ne s'affiche pas.
visual-studio
visual-studio-2015
roslyn
Niyoko Yuliawan
la source
la source
Réponses:
Je viens de faire face au même problème. Lorsque vous créez un nouveau projet Web, deux packages nuget sont automatiquement ajoutés à votre projet. Si vous les supprimez, votre problème devrait être résolu. Les noms de package sont: " Microsoft.CodeDom.Providers.DotNetCompilerPlatform " et " Microsoft.Net.Compilers ".
la source
Import
nœuds, desTarget
nœuds (EnsureNugetPackageBuildImports) et desReference
nœuds. Supprimez également le<system.codedom>
nœud de votre web.config.J'ai eu le même problème. Suivez les étapes à partir d' ici . Fondamentalement:
Désinstaller le package
Dans les paramètres de votre profil de publication, décochez "Autoriser le site précompilé à être mis à jour". Vous pouvez le trouver sous Paramètres> Précompiler lors de la publication> configurer
la source
Après avoir cherché le même produit que je fais face, je suis juste venu ici. J'ai lu la réponse ci-dessus qui est juste.
Je donne la réponse, à cause de Voici le bon article à expliquer:
C'est aussi le très bon article, sur l'histoire de cet exe
la source
Après d'innombrables efforts .... et selon ce site . Je trouve que vous pouvez utiliser
/p:UseWPP_CopyWebApplication=true /p:PipelineDependsOnBuild=false
dans MSBuild pour transformer web.config, cela inclut également le compilateur roslyn dans la construction. La sortie est la même que celle que vous obtenez en publiant dans Visual Studio dans le système de fichiersla source
Il existe un bogue ouvert sur le référentiel roslyn à propos de ce problème.
Dans mon cas, tout ce que j'avais à faire était de rétrograder la dll
Microsoft.CodeDom.Providers.DotNetCompilerPlatform
de la version1.0.6
à1.0.5
.la source
J'ai eu le même problème en septembre 2016 lorsque j'ai repris un programme ASP.NET existant. J'ai trouvé qu'il y avait plusieurs versions des deux packages de compilateur mentionnés par Kemal installés dans différents projets de la solution.
Alors d'abord, j'ai mis à jour pour les obtenir de la même manière. VS ne vous dit pas que des mises à jour sont disponibles dans ce scénario (ou peut-être que je les ai manquées?)
J'ai ensuite dû redémarrer VS2015 pour que les paquets se nettoient correctement.
la source