public static void Main() { try { // <Snippet1> // <Snippet2> // <Snippet3> // <Snippet4> ServiceDescription myServiceDescription = ServiceDescription.Read("MathService_CS.wsdl"); PortTypeCollection myPortTypeCollection = myServiceDescription.PortTypes; int noOfPortTypes = myServiceDescription.PortTypes.Count; Console.WriteLine("\nTotal number of PortTypes: " + noOfPortTypes); PortType myNewPortType = myPortTypeCollection["MathServiceSoap"]; // </Snippet4> // Get the index in the collection. int index = myPortTypeCollection.IndexOf(myNewPortType); // </Snippet3> Console.WriteLine("Removing the PortType named " + myNewPortType.Name); // Remove the PortType from the collection. myPortTypeCollection.Remove(myNewPortType); noOfPortTypes = myServiceDescription.PortTypes.Count; Console.WriteLine("\nTotal number of PortTypes: " + noOfPortTypes); // Check whether the PortType exists in the collection. bool bContains = myPortTypeCollection.Contains(myNewPortType); Console.WriteLine("Port Type'" + myNewPortType.Name + "' exists: " + bContains); Console.WriteLine("Adding the PortType"); // Insert a new portType at the index location. myPortTypeCollection.Insert(index, myNewPortType); // </Snippet2> // Display the number of portTypes after adding a port. Console.WriteLine("Total number of PortTypes after " + "adding a new port: " + myServiceDescription.PortTypes.Count); bContains = myPortTypeCollection.Contains(myNewPortType); Console.WriteLine("Port Type'" + myNewPortType.Name + "' exists: " + bContains); myServiceDescription.Write("MathService_New.wsdl"); // </Snippet1> } catch (Exception e) { Console.WriteLine("Exception: " + e.Message); } }
public static void Main() { try { // Read the existing Web service description file. ServiceDescription myServiceDescription = ServiceDescription.Read("MathService_CS.wsdl"); PortTypeCollection myPortTypeCollection = myServiceDescription.PortTypes; int noOfPortTypes = myServiceDescription.PortTypes.Count; Console.WriteLine("\nTotal number of PortTypes: " + myServiceDescription.PortTypes.Count); // Get the first PortType in the collection. PortType myNewPortType = myPortTypeCollection["MathServiceSoap"]; int index = myPortTypeCollection.IndexOf(myNewPortType); Console.WriteLine("The PortType with the name " + myNewPortType.Name + " is at index: " + (index + 1)); Console.WriteLine("Removing the PortType: " + myNewPortType.Name); // Remove the PortType from the collection. myPortTypeCollection.Remove(myNewPortType); bool bContains = myPortTypeCollection.Contains(myNewPortType); Console.WriteLine("The PortType with the name " + myNewPortType.Name + " exists: " + bContains); Console.WriteLine("Total number of PortTypes after removing: " + myServiceDescription.PortTypes.Count); Console.WriteLine("Adding a PortType: " + myNewPortType.Name); // Add a new portType from the collection. myPortTypeCollection.Add(myNewPortType); // Display the number of portTypes after adding a port. Console.WriteLine("Total number of PortTypes after " + "adding a new port: " + myServiceDescription.PortTypes.Count); // List the PortTypes available in the WSDL document. foreach (PortType myPortType in myPortTypeCollection) { Console.WriteLine("The PortType name is: " + myPortType.Name); } myServiceDescription.Write("MathService_New.wsdl"); } catch (Exception e) { Console.WriteLine("Exception: " + e.Message); } }