using System;
using System.IO;
using System.Xml;
using System.Xml.Serialization;
[SoapType("SoapGroupType", "http://www.yourDomain.com")]
public class Group
{
public string GroupName;
public Employee[] Employees;
}
[SoapType("EmployeeType")]
public class Employee
{
public string Name;
}
public class Run
{
public static void Main()
{
SoapAttributeOverrides mySoapAttributeOverrides = new SoapAttributeOverrides();
SoapAttributes soapAtts = new SoapAttributes();
SoapTypeAttribute soapType = new SoapTypeAttribute();
soapType.TypeName = "Team";
soapType.IncludeInSchema = false;
soapType.Namespace = "http://www.yourdomain.com";
soapAtts.SoapType = soapType;
mySoapAttributeOverrides.Add(typeof(Group), soapAtts);
XmlTypeMapping myMapping = (new SoapReflectionImporter(mySoapAttributeOverrides)).ImportTypeMapping(typeof(Group));
XmlSerializer mySerializer = new XmlSerializer(myMapping);
TextReader reader = new StreamReader("SoapType2.xml");
XmlTextReader xmlReader = new XmlTextReader(reader);
xmlReader.ReadStartElement();
Group myGroup = (Group)mySerializer.Deserialize(xmlReader);
xmlReader.ReadEndElement();
Console.WriteLine(myGroup.GroupName);
xmlReader.Close();
reader.Close();
}
}
|