section registered machinetoapplication machine error application allowdefinition allow web-config visual-studio-2012 publish

web-config - registered - allow definition machine to application error



Es un error utilizar una sección registrada como allowDefinition=''MachineToApplication'' (4)

Estoy usando Visual Studio 2012 cuando intento publicar mi aplicación web, aparece el siguiente error:

Error 1 It is an error to use a section registered as allowDefinition=''MachineToApplication'' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS. E:/Temp/BUILD/Debug/AspnetCompileMerge/Source/bin/web.config 24 0 Pixelate

Aquí está el contenido de la ventana de salida:

1>------ Build started: Project: Pixelate, Configuration: Debug Any CPU ------ 1> No way to resolve conflict between "System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=969db8053d3322ac, Retargetable=Yes" and "System.Core, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e". Choosing "System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=969db8053d3322ac, Retargetable=Yes" arbitrarily. 1> No way to resolve conflict between "System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" and "System.ServiceModel.Web, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e". Choosing "System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" arbitrarily. 1> Pixelate -> [...]/bin/TwistedPixel.Pixelate.dll 1> ''[...]/bin'' 1> CMD.EXE was started with the above path as the current directory. 1> UNC paths are not supported. Defaulting to Windows directory. 2>------ Publish started: Project: Pixelate, Configuration: Debug Any CPU ------ 2>Connecting to [...]... 2>Transformed Web.config using [...]/Web.Debug.config into E:/Temp/BUILD/Debug/TransformWebConfig/transformed/Web.config. 2>Transformed[...]/Web.config using [...]/bin/Web.Debug.config into E:/Temp/BUILD/Debug/TransformWebConfig/transformed/bin/Web.config. 2>Copying all files to temporary location below for package/publish: 2>E:/Temp/BUILD/Debug/AspnetCompileMerge/Source. 2>C:/Windows/Microsoft.NET/Framework/v4.0.30319/aspnet_compiler.exe -v / -p E:/Temp/BUILD/Debug/AspnetCompileMerge/Source -c -d E:/Temp/BUILD/Debug/AspnetCompileMerge/TempBuildDir 2>E:/Temp/BUILD/Debug/AspnetCompileMerge/Source/bin/web.config(24,0): Error ASPCONFIG: It is an error to use a section registered as allowDefinition=''MachineToApplication'' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS. 2> ========== Build: 1 succeeded, 0 failed, 2 up-to-date, 0 skipped ========== ========== Publish: 0 succeeded, 1 failed, 0 skipped ==========

Si alguien puede arrojar algo de luz sobre por qué sucede esto y cómo solucionarlo, sería genial.

He intentado limpiar y reconstruir (se reconstruye bien) He intentado eliminar el contenedor, obj y mover el directorio de salida temporal, aún persiste el error.


Este es un problema con un web.config adicional creado por el proceso de publicación. Pase el cursor sobre la pestaña de web.config y verá la ubicación del archivo adicional que puede limpiar. Incluso podría ser para una configuración diferente, pero aún así produce el error (por ejemplo, Depurar vs. Liberar) Probablemente en algo como <app>/obj/Release/Package/PackageTmp/web.config .

Bórralo y deberías estar listo para ir. Aunque podría volver a publicarse más tarde.


Este parece ser un problema bastante común y el mensaje de error no es de ninguna ayuda cuando se debe a que la función de publicación web en Visual Studio crea el elemento web.config adicional.

Pude vencer al forzar el proyecto de mi aplicación ASP.NET para purgar el directorio obj después de cada compilación.

Agregue lo siguiente a su evento posterior a la compilación, y ejecute el evento posterior a la compilación: ''Siempre''

rmdir /S /Q "$(ProjectDir)/obj"


Hay un problema con una de las configuraciones en su web.config. El error puede darle una idea de la ubicación.


Solución limpia mientras su solución está configurada en el modo de lanzamiento.

Solución limpia mientras su solución está configurada en modo de depuración.

Construya mientras su solución está configurada en modo de depuración.