Estoy tratando de crear una aplicación web usando Visual Studio 2015 y .NET 4.5.1. Cuando publico el sitio web, Visual Studio crea la carpeta llamada roslyn
.
Sé que se usa para compilar código sobre la marcha, pero desafortunadamente mi proveedor de alojamiento no me permite ejecutar el compilador en su servidor.
¿Cómo publicar el sitio web sin una roslyn
versión anterior de Visual Studio?
EDITAR: Recibí este error al intentar acceder a mi sitio web.
Parece que IIS intenta ejecutarse, roslyn\csc.exe
pero mi cuenta de usuario no tiene permiso para hacerlo. Con la versión anterior de Visual Studio, este error no aparece.
visual-studio
visual-studio-2015
roslyn
Niyoko Yuliawan
fuente
fuente
Respuestas:
Acabo de enfrentar el mismo problema. Cuando crea un nuevo proyecto web, dos paquetes nuget se agregan automáticamente a su proyecto. Si los elimina, su problema debería resolverse. Los nombres de los paquetes son: " Microsoft.CodeDom.Providers.DotNetCompilerPlatform " y " Microsoft.Net.Compilers ".
fuente
Import
nodos,Target
nodos (GarantizarNugetPackageBuildImports) yReference
nodos. También elimine el<system.codedom>
nodo de su web.config.Tuve el mismo problema. Seguí los pasos desde aquí . Básicamente:
Desinstalar el paquete
En la configuración de tu perfil de publicación, desmarca "Permitir que el sitio precompilado sea actualizable". Puede encontrar esto en Configuración> Precompilar durante la publicación> configurar
fuente
Después de buscar la misma emisión que enfrento, acabo de llegar aquí. Leí la respuesta anterior que es correcta.
Doy la respuesta, porque aquí está el buen artículo para explicar:
Este es también el muy buen artículo, sobre la historia de este exe
fuente
Después de innumerables esfuerzos .... y según este sitio web . Encuentro que puede usar
/p:UseWPP_CopyWebApplication=true /p:PipelineDependsOnBuild=false
en MSBuild para transformar web.config, esto también incluye el compilador roslyn en la compilación. El resultado es el mismo que obtiene al publicar en Visual Studio en el sistema de archivosfuente
Hay un error abierto en el repositorio de roslyn sobre este problema.
En mi caso, todo lo que tuve que hacer fue degradar el dll
Microsoft.CodeDom.Providers.DotNetCompilerPlatform
de la versión1.0.6
a1.0.5
.fuente
Tuve el mismo problema en septiembre de 2016 cuando asumí el control de un programa ASP.NET existente. Descubrí que había varias versiones de los dos paquetes de compiladores mencionados por Kemal instalados en diferentes proyectos de la solución.
Así que en primer lugar actualicé para que fueran iguales. VS no le dice que hay actualizaciones disponibles en este escenario (¿o tal vez me las perdí?)
Luego tuve que reiniciar VS2015 para que los paquetes se limpiaran correctamente.
fuente