Service Class
Groups together a set of related instances of the Port class that are associated with an XML Web service. This class cannot be inherited.
Assembly: System.Web.Services (in System.Web.Services.dll)
System.Web.Services.Description.DocumentableItem
System.Web.Services.Description.NamedItem
System.Web.Services.Description.Service
| Name | Description | |
|---|---|---|
![]() | Service() | Initializes a new instance of the Service class. |
| Name | Description | |
|---|---|---|
![]() | Documentation | Gets or sets the text documentation for the instance of the DocumentableItem.(Inherited from DocumentableItem.) |
![]() | DocumentationElement | Gets or sets the documentation element for the DocumentableItem.(Inherited from DocumentableItem.) |
![]() | ExtensibleAttributes | Gets or sets an array of type XmlAttribute that represents attribute extensions of WSDL to comply with Web Services Interoperability (WS-I) Basic Profile 1.1.(Inherited from DocumentableItem.) |
![]() | Extensions | Gets the collection of extensibility elements associated with the Service.(Overrides DocumentableItem.Extensions.) |
![]() | Name | Gets or sets the name of the item.(Inherited from NamedItem.) |
![]() | Namespaces | Gets or sets the dictionary of namespace prefixes and namespaces used to preserve namespace prefixes and namespaces when a ServiceDescription object is constructed.(Inherited from DocumentableItem.) |
![]() | Ports | Gets the collection of Port instances contained in the Service. |
![]() | ServiceDescription | Gets the ServiceDescription of which the Service is a member. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
The Service class corresponds to the Web Services Description Language (WSDL) <service> element enclosed by the <definitions> root element. For more information about WSDL, see the specification at http://www.w3.org/TR/wsdl/.
Imports System Imports System.Web.Services.Description Imports System.Xml Imports Microsoft.VisualBasic Class MyServiceClass Public Shared Sub Main() Try ' Read a WSDL document. Dim myServiceDescription As ServiceDescription = _ ServiceDescription.Read("MathService_vb.wsdl") Dim myServiceCollection As ServiceCollection = _ myServiceDescription.Services Dim noOfServices As Integer = myServiceCollection.Count Console.WriteLine(ControlChars.Newline & _ "Total Number of Services :" & noOfServices.ToString()) ' Gets a reference to the service. Dim myOldService As Service = myServiceCollection(0) Console.WriteLine("No. of Ports in the Service" & _ myServiceCollection(0).Ports.Count.ToString()) Console.WriteLine("These are the ports in the service:") Dim i As Integer For i = 0 To myOldService.Ports.Count - 1 Console.WriteLine("Port name: " & myOldService.Ports(i).Name) Next i Console.WriteLine("Service name: " & myOldService.Name) Dim myService As New Service() myService.Name = "MathService" ' Add the Ports to the newly created Service. Dim j As Integer For j = 0 To myOldService.Ports.Count - 1 Dim PortName As String = myServiceCollection(0).Ports(j).Name Dim BindingName As String = _ myServiceCollection(0).Ports(j).Binding.Name myService.Ports.Add(CreatePort(PortName, BindingName, _ myServiceDescription.TargetNamespace)) Next j Console.WriteLine("Newly created ports -") Dim k As Integer For k = 0 To myService.Ports.Count - 1 Console.WriteLine("Port name: " & myOldService.Ports(k).Name) Next k ' Add the extensions to the newly created Service. Dim noOfExtensions As Integer = myOldService.Extensions.Count Console.WriteLine("No. of extensions: " & noOfExtensions.ToString()) If noOfExtensions > 0 Then Dim l As Integer For l = 0 To myOldService.Ports.Count - 1 myService.Extensions.Add(myServiceCollection(0).Extensions(l)) Next l End If ' Remove the service from the collection. myServiceCollection.Remove(myOldService) ' Add the newly created service. myServiceCollection.Add(myService) myServiceDescription.Write("MathService_New.wsdl") Catch e As Exception Console.WriteLine("Exception:" & e.Message) End Try End Sub 'Main Public Shared Function CreatePort(PortName As String, _ BindingName As String, targetNamespace As String) As Port Dim myPort As New Port() myPort.Name = PortName myPort.Binding = New XmlQualifiedName(BindingName, targetNamespace) ' Create a SoapAddress extensibility element to add to the port. Dim mySoapAddressBinding As New SoapAddressBinding() mySoapAddressBinding.Location = _ "http://localhost/ServiceClass/MathService.vb.asmx" myPort.Extensions.Add(mySoapAddressBinding) Return myPort End Function 'CreatePort End Class 'MyServiceClass
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
.jpeg?cs-save-lang=1&cs-lang=vb)
.jpeg?cs-save-lang=1&cs-lang=vb)