System.ServiceModel.Discovery.FindCriteria.WriteXml C# (CSharp) Méthode

WriteXml() private méthode

private WriteXml ( XmlWriter writer, System.ServiceModel.Discovery.DiscoveryVersion version ) : void
writer System.Xml.XmlWriter
version System.ServiceModel.Discovery.DiscoveryVersion
Résultat void
		internal void WriteXml (XmlWriter writer, DiscoveryVersion version)
		{
			if (writer == null)
				throw new ArgumentNullException ("writer");

			// standard members
			writer.WriteStartElement ("d", "Types", version.Namespace);
			int p = 0;
			foreach (var qname in ContractTypeNames)
				if (writer.LookupPrefix (qname.Namespace) == null)
					writer.WriteAttributeString ("xmlns", "p" + p++, "http://www.w3.org/2000/xmlns/", qname.Namespace);
			writer.WriteValue (ContractTypeNames);
			writer.WriteEndElement ();

			writer.WriteStartElement ("Scopes", version.Namespace);
			if (ScopeMatchBy != null) {
				writer.WriteStartAttribute ("MatchBy");
				writer.WriteValue (ScopeMatchBy);
				writer.WriteEndAttribute ();
			}
			writer.WriteValue (Scopes);
			writer.WriteEndElement ();

			// non-standard members
			if (MaxResults != default_max_results) {
				writer.WriteStartElement ("MaxResults", SerializationNS);
				writer.WriteValue (MaxResults);
				writer.WriteEndElement ();
			}
			writer.WriteStartElement ("Duration", SerializationNS);
			writer.WriteValue (Duration);
			writer.WriteEndElement ();
			
			foreach (var ext in Extensions)
				ext.WriteTo (writer);
		}