Documentos de Académico
Documentos de Profesional
Documentos de Cultura
de entrada direccionable del servicio web. Hace referencia al cdigo de ensamblados precompilados, a un archivo
de cdigo subyacente o a un cdigo contenido en el propio archivo .asmx.
Nota:
Si el cdigo est contenido directamente en el archivo .asmx, ASP.NET lo compilar a peticin en el servidor.
Pgina 2 de 5
La directiva de procesamiento WebService situada en la parte superior del archivo .asmx determina dnde se
buscar la implementacin del servicio web. De forma predeterminada, Visual Studio utiliza archivos de cdigo en
segundo plano, como Service1.asmx.vb o Service1.asmx.cs, cuando se crea un servicio web con la plantilla de
proyecto de servicio web ASP.NET.
Nota:
Visual Studio no admite la compilacin entre lenguajes. Por ejemplo, no es posible incluir un servicio web de
Visual C# en un proyecto de aplicacin web ASP.NET de Visual Basic, y viceversa.
Cuando se crea un servicio web en cdigo administrado, ASP.NET automticamente proporciona la infraestructura
y controla el procesamiento de solicitudes y respuestas del servicio web, incluido el anlisis y la creacin de
mensajes SOAP.
El atributo Language indica el lenguaje de programacin utilizado para desarrollar el servicio web. Los servicios
web se pueden crear en cualquier lenguaje compatible con .NET, como Visual Basic .NET o Visual C#.
Al crear servicios web en cdigo administrado con Visual Studio .NET, la implementacin del servicio web reside
en un archivo de cdigo en segundo plano. El archivo de cdigo subyacente se asocia a la pgina .asmx mediante el
atributo Codebehind.
Nota:
Este atributo ayuda a Visual Studio a administrar el proyecto de servicio web y no es necesario en tiempo de
ejecucin.
Cuando se utiliza la plantilla de proyecto de servicio web ASP.NET, el atributo Class indica qu clase del archivo
de cdigo subyacente implementar la funcionalidad del servicio web.
Visual Studio .NET inserta automticamente esta directiva de procesamiento en el archivo .asmx cuando se utiliza
la plantilla de proyecto de servicio Web ASP.NET.
Sugerencia:
Si se decide cambiar el nombre de la clase, hay que asegurarse de cambiarlo en el atributo Class de la directiva
Pgina 3 de 5
WebService.
Nota:
Para ver el contenido del archivo .asmx, en el Explorador de soluciones, haga clic con el botn secundario del
mouse en el archivo .asmx y despus haga clic en Abrir con en el men de acceso directo. En el cuadro de dilogo
Abrir con, seleccione Editor de cdigo fuente (texto) y, a continuacin, haga clic en Abrir.
Para obtener ms informacin, vea Tutorial: Generar un servicio web XML bsico con ASP.NET..
Clase System.Web.Services.WebService
La clase System.Web.Services.WebService, que define la clase base opcional de los servicios web, proporciona
acceso directo a los objetos ASP.NET comunes, como los destinados a estados de aplicacin y de sesin. De forma
predeterminada, los servicios web creados en cdigo administrado con Visual Studio se heredan de esta clase. El
servicio web se puede heredar de esta clase para obtener acceso a objetos intrnsecos de ASP.NET, como Request y
Session. Para obtener ms informacin, vea WebService (Clase).
Si el servicio web no hereda de esta clase, puede obtener acceso a objetos intrnsecos de ASP.NET desde
System.Web.HttpContext.Current. La clase que implementa el servicio web debe ser pblica y debe tener un
constructor pblico predeterminado (sin parmetros). De este modo ASP.NET podr crear una instancia de la clase
del servicio web para procesar las solicitudes de servicio web entrantes. Para obtener ms informacin, vea
HttpContext.Current (Propiedad).
Copiar
[Visual Basic]
Imports System.Web.Services
Public Class Service1
Inherits System.Web.Services.WebService
' Implementation code.
End Class
Atributo WebService
Cada servicio web requiere un espacio de nombres nico que permita a las aplicaciones cliente diferenciar entre los
servicios web que utilicen el mismo nombre de mtodo. El espacio de nombres predeterminado de los servicios
web creados en Visual Studio .NET es "http://tempuri.org/WebService1/Service1", donde WebService1 es el
nombre del proyecto y Service1 es el nombre de la clase. Aunque el espacio de nombres se asemeja a una direccin
URL normal, no es de esperar que se pueda ver en un explorador web, ya que se trata simplemente de un
identificador nico.
Nota:
Quiz convenga incluir una pgina web en dicha ubicacin con informacin sobre los servicios web
proporcionados.
Pgina 4 de 5
Utilice el atributo WebService para especificar el espacio de nombres y proporcionar una breve descripcin del
servicio web. Dicha descripcin aparecer en la pgina de ayuda del servicio web cuando se invoque dicho servicio
desde un explorador sin especificar una cadena de consulta:
Copiar
[Visual Basic]
<System.Web.Services.WebService( _
Namespace:="http://tempuri.org/WebService1/Service1", _
Description:="A short description of the Web service.")> _
Public Class Service1
Inherits System.Web.Services.WebService
' Implementation code.
End Class
El atributo WebMethod contiene varias propiedades para configurar el comportamiento del servicio web. Para
obtener ms informacin, vea WebMethodAttribute (Clase) y Utilizar el atributo WebMethod. Este atributo se
puede utilizar, por ejemplo, para incluir una descripcin breve que aparecer en la pgina de ayuda del servicio
asociado:
[Visual Basic]
<System.Web.Services.WebMethod( _
Description:="A short description of this method.")> _
Public Function MyString(ByVal x as string) As String
' Implementation code.
End Function
Separe varias propiedades con una coma. Por ejemplo, para proporcionar una descripcin y almacenar en cach
los resultados de un servicio web durante 60 segundos:
[Visual Basic]
<System.Web.Services.WebMethod( _
Description:="A short description of this method.", _
CacheDuration:=60)> _
Public Function MyString(ByVal x as string) As String
' Implementation code.
End Function
Cada servicio web se compone de un archivo .asmx y una clase de servicio web. El archivo .asmx contiene una
directiva de procesamiento WebService que hace referencia a la clase. La clase de servicio web es pblica; tiene
Pgina 5 de 5
un constructor pblico predeterminado y contiene uno o varios mtodos pblicos marcados con el atributo
WebMethod. El siguiente diagrama muestra la relacin existente entre el proyecto, la clase, sus mtodos y el
servicio web resultante.
Clases
WebService
elementos
resultantes