WebServiceBindingAttribute Class
Declares the binding one or more XML Web service methods implemented within the class implementing the XML Web service. This class cannot be inherited.
For a list of all members of this type, see WebServiceBindingAttribute Members.
System.Object
System.Attribute
System.Web.Services.WebServiceBindingAttribute
[Visual Basic] <AttributeUsage(AttributeTargets.Class)> NotInheritable Public Class WebServiceBindingAttribute Inherits Attribute [C#] [AttributeUsage(AttributeTargets.Class)] public sealed class WebServiceBindingAttribute : Attribute [C++] [AttributeUsage(AttributeTargets::Class)] public __gc __sealed class WebServiceBindingAttribute : public Attribute [JScript] public AttributeUsage(AttributeTargets.Class) class WebServiceBindingAttribute extends Attribute
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Remarks
A binding, as defined by Web Services Description Language (WSDL), is similar to an interface, in that it defines a concrete set of operations. Each XML Web service method is an operation within a particular binding. XML Web service methods are members of either the default binding for an XML Web service or in a binding specified within a WebServiceBindingAttribute applied to a class implementing an XML Web service. An XML Web service can implement multiple bindings, by applying multiple WebServiceBindingAttribute attributes to an XML Web service.
Once one or more WebServiceAttribute attributes are applied to an XML Web service, a SoapDocumentMethodAttribute or SoapRpcMethodAttribute can be applied to individual XML Web service methods to indicate the binding operation implemented by a particular XML Web service method. Set the Binding property of SoapDocumentMethodAttribute or SoapRpcMethodAttribute to specify the binding an XML Web service method is implementing an operation for.
Example
[Visual Basic, C#] The following XML Web service implements operations from four bindings. Specifically, the XML Web service declares three bindings it implements operations for, by applying three WebServiceBindingAttribute attributes to the XML Web service.
[Visual Basic, C#] To specify which binding an XML Web service method is implementing an operation for, a SoapDocumentMethodAttribute is applied to each of the XML Web service methods, except DefaultBindingMethod. By not specifying a binding for DefaultBindingMethod, it is implementing an operation on the default binding for the XML Web service.
[Visual Basic] <%@ WebService Language="VB" class="BindingSample" %> Imports System Imports System.Web.Services Imports System.Web.Services.Protocols ' Binding is defined in this XML Web service and uses the default namespace. ' Binding is defined in this XML Web service, but it is not a part of the default ' namespace. ' Binding is defined on a remote server, but this XML Web service implements at ' least one operation in that binding. <WebServiceBinding(Name := "LocalBinding"), _ WebServiceBinding(Name := "LocalBindingNonDefaultNamespace", _ Namespace := "http://www.contoso.com/MyBinding"), _ WebServiceBinding(Name := "RemoteBinding", _ Namespace := "http://www.contoso.com/MyBinding", _ Location := "http://www.contoso.com/MySevice.asmx?wsdl")> _ Public Class BindingSample <SoapDocumentMethod(Binding := "LocalBinding"), WebMethod()> _ Public Function LocalBindingMethod() As String Return "Member of binding defined in this XML Web service and member of the default namespace" End Function <SoapDocumentMethod(Binding := "LocalBindingNonDefaultNamespace"), WebMethod()> _ Public Function LocalBindingNonDefaultNamespaceMethod() As String Return "Member o1f binding defined in this XML Web service, but a part of a different namespace" End Function <SoapDocumentMethod(Binding := "RemoteBinding"), WebMethod()> _ Public Function RemoteBindingMethod() As String Return "Member of a binding defined on another server" End Function <WebMethod()> _ Public Function DefaultBindingMethod() As String Return "Member of the default binding" End Function End Class [C#] <%@ WebService Language="C#" class="BindingSample" %> using System; using System.Web.Services; using System.Web.Services.Protocols; // Binding is defined in this XML Web service and uses the default namespace. [ WebServiceBinding(Name="LocalBinding")] // Binding is defined in this XML Web service, but it is not a part of the default namespace. [ WebServiceBinding(Name="LocalBindingNonDefaultNamespace", Namespace="http://www.contoso.com/MyBinding" )] // Binding is defined on a remote server, but this XML Web service implements at least one operation in that binding. [ WebServiceBinding(Name="RemoteBinding", Namespace="http://www.contoso.com/MyBinding", Location="http://www.contoso.com/MySevice.asmx?wsdl")] public class BindingSample { [ SoapDocumentMethod(Binding="LocalBinding")] [ WebMethod() ] public string LocalBindingMethod() { return "Member of binding defined in this XML Web service and member of the default namespace"; } [ SoapDocumentMethod(Binding="LocalBindingNonDefaultNamespace")] [ WebMethod() ] public string LocalBindingNonDefaultNamespaceMethod() { return "Member of binding defined in this XML Web service, but a part of a different namespace"; } [ SoapDocumentMethod(Binding="RemoteBinding")] [ WebMethod() ] public string RemoteBindingMethod() { return "Member of a binding defined on another server"; } [ WebMethod() ] public string DefaultBindingMethod() { return "Member of the default binding"; } }
[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button
in the upper-left corner of the page.
Requirements
Namespace: System.Web.Services
Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework
Assembly: System.Web.Services (in System.Web.Services.dll)
See Also
WebServiceBindingAttribute Members | System.Web.Services Namespace | SoapDocumentMethodAttribute | SoapRpcMethodAttribute