Rückwärts arbeiten könnte helfen - erst Ihre Klasse erstellen, dann serialisieren und sehen, was Sie bekommen.
Für die einfachsten Klassen ist es eigentlich ziemlich einfach. Sie können XmlSerializer verwenden serialisiert werden, wie: ": \ temp \ class.xml c"
namespace ConsoleApplication1
{
public class MyClass
{
public string SomeProperty
{
get;
set;
}
}
class Program
{
static void Main(string[] args)
{
XmlSerializer serializer = new XmlSerializer(typeof(MyClass));
TextWriter writer = new StreamWriter(@"c:\temp\class.xml");
MyClass firstInstance = new MyClass();
firstInstance.SomeProperty = "foo"; // etc
serializer.Serialize(writer, firstInstance);
writer.Close();
FileStream reader = new FileStream(@"c:\temp\class.xml", FileMode.Open);
MyClass secondInstance = (MyClass)serializer.Deserialize(reader);
reader.Close();
}
}
}
eine serialisierte Darstellung Ihrer Klasse in XML zu diesem schreibt. Du könntest einen Blick darauf werfen und sehen, was du bekommst. Umgekehrt können Sie serializer.Deserialize verwenden, um die Klasse aus "c: \ temp \ class.xml" zu instanziieren.
Sie können das Verhalten der Serialisierung ändern und mit unerwarteten Knoten usw. umgehen - sehen Sie sich zum Beispiel the XmlSerializer MSDN page an.
Hatten Sie Glück mit einem der vorgeschlagenen Ansätze? –
Ja !. Ich habe erfolgreich das xsd-Tool verwendet, um die Klasse zu generieren (ich musste einige Änderungen vornehmen, um meine Anforderungen zu erfüllen). – Grasshopper
http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlserializer.aspx – Mou