una puede generar error cs1567 clase c# asp.net web-services .net-framework-version

c# - puede - error cs1567



Error: no se puede generar una clase temporal(resultado=1)... al invocar métodos en un servicio web (3)

Error: no se puede generar una clase temporal (resultado = 1) ... al invocar métodos en un servicio web. Estoy utilizando VS 2008 C # ASP.NET 3.5. Estoy invocando un servicio web remoto a mi aplicación.

Server Error in ''/'' Application. Server was unable to process request. ---> Unable to generate a temporary class (result=1). error CS2001: Source file ''C:/WINDOWS/TEMP/6sbkwt2d.0.cs'' could not be found error CS2008: No inputs specified Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> Unable to generate a temporary class (result=1). error CS2001: Source file ''C:/WINDOWS/TEMP/6sbkwt2d.0.cs'' could not be found error CS2008: No inputs specified Source Error: Line 775: [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CheckLogin", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] Line 776: public System.Data.DataSet CheckLogin(string uname, string pswd) { Line 777: object[] results = this.Invoke("CheckLogin", new object[] { Line 778: uname, Line 779: pswd}); Source File: c:/windows/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files/root/14127ae4/96323535/App_WebReferences.u9ldrmk1.0.cs Line: 777


Eso sucede cuando su sitio web no funciona con el Grupo de aplicaciones "DefaultAppPool" y usted elige su propio grupo. En ese caso, debe agregar un usuario con el nombre de su grupo.


Primero, crédito donde el crédito es debido. El OP resolvió este problema y lo responde en la sección de comentarios de la pregunta. Sin embargo, entiendo que muchas personas vienen a y leerán la pregunta y no mirarán los comentarios. Por lo tanto, estoy transmitiendo la respuesta anterior aquí. Asegúrese de votar la pregunta si esto es útil.

Este problema se produce porque la cuenta que está asociada con el grupo de aplicaciones de su servicio web en IIS no tiene permiso de lectura / escritura en la carpeta C:/Windows/Temp . No tengo ni idea de por qué la cuenta necesita acceso a esta carpeta, pero la tiene. Desde mi observación casual, parece que solo escribe un archivo vacío con un nombre aleatorio en la carpeta Temp .

Para resolver este problema, busque la carpeta C:/Windows y haga clic con el botón derecho en la carpeta Temp . Seleccione Propiedades y, en la pestaña Seguridad, agregue la cuenta asociada a su grupo de aplicaciones de servicios web. Presione el botón Aceptar , vaya a IIS y recicle su grupo de aplicaciones. Esto debería arreglar su solicitud de servicio web.

Vale la pena señalar que las circunstancias en torno a este error pueden ser un poco engañosas. Me he encontrado con este problema un par de veces más de 5 años. (Lo he olvidado cada vez). La razón por la que no es tan notable es porque puede publicar un servicio web, navegar con éxito a la página asmx asociada y ver el esquema de sus métodos de servicio web. Además, su proyecto de Visual Studio puede agregar una referencia al servicio web y Visual Studio generará automáticamente todas las clases asociadas para el servicio web en su proyecto VS.

Esto da la impresión de que todo funciona correctamente hasta que realice su primera solicitud para ejecutar un método en el servicio web. El servicio web fallará cuando comience a ejecutar el código porque quiere acceder al directorio temp .

Puede encontrar más información sobre este error en el informe de error reconocido en Microsoft.com.


Resumen en español: Es necesario establecer permisos de escritura en la carpeta "C: / Windows / Temp" al usuario del grupo de aplicaciones. Para esto, no se puede modificar la configuración. Luego de hacer esto, "recicla" el grupo de aplicaciones e intenta de nuevo. Esta solición funcionó en Windows Server 2003 Saludos