I have got the following class generated from xsd.exe. Thats why i can't just add something like [XML Attribute("...")] to the code.
public partial class MethodCheckType { private WebServiceType[] webServiceField; /// <remarks/> [System.Xml.Serialization.XmlElementAttribute("WebService")] public WebServiceType[] WebService { get { return this.webServiceField; } set { this.webServiceField = value; } } } public partial class WebServiceType { private string uRLField; private string parameterField; private string returnValueField; private CredentialsType credentialsField; /// <remarks/> public string URL { get { return this.uRLField; } set { this.uRLField = value; } } /// <remarks/> public string Parameter { get { return this.parameterField; } set { this.parameterField = value; } } /// <remarks/> public string ReturnValue { get { return this.returnValueField; } set { this.returnValueField = value; } } /// <remarks/> public CredentialsType Credentials { get { return this.credentialsField; } set { this.credentialsField = value; } } } Maybe i have to change my XSD file and then i had to write this in the class code again.
For understanding it better: I want to proof another method (the method "ReadXml" below) to work correct.
/// <summary> /// Reads an XML File in an array of WebServiceType objects. /// </summary> /// <param name="path">The filename to read.</param> /// <returns>An array of WebServiceType Objects.</returns> public static WebServiceType[] ReadXml(string path) { // Is the path NOT a valic UNC path? if (!IsValidPath(path)) { Console.Write(MethodCheck.Properties.Resources.ERR003); return null; } XmlSerializer serializer = new XmlSerializer(typeof(MethodCheckType)); MethodCheckType output = null; StringReader reader = null; try { reader = new StringReader(path); output = (MethodCheckType)serializer.Deserialize(reader); } catch (Exception) { throw; } finally { reader.Dispose(); } return output.WebService; } To check the ReadXml method i have to write a method (for unti tests) which takes as params an array of WebServiceType objects an returns a string. I have no idea how to write this method. Below is a sample string:

Edit: This text seems to be hard to understand. I will try to formulate it in a clearer way: I already have got the ReadXml method. To proof whether it works correct or not i coded a test method:
/// <summary> ///A test for ReadXml ///</summary> [TestMethod()] public void ReadXmlTest2() { string path = @"C:\Users\pp-admin\Documents\Visual Studio 2010\Methodenpruefung der Webservices\Methodenpruefung\Methodenpruefung\BeispielXmlDatei.xml"; string expected = testXMLFile; string actual; WebServiceType[] xmlSerialized = WebserviceReader.ReadXml(path); // Deserialisieren des XML Objekts um einen String zu bekommen actual = WebServiceType.SerializeToXml(xmlSerialized); Assert.AreEqual(expected, actual); Assert.Inconclusive("Verify the correctness of this test method."); } The method SerializeToXml has to take an array of WebServiceType objects, but it should return a complete XML string like its shown in the sample.
/// <summary> /// This method deserializes an arrayof WebServiceType objects into a XML string. /// </summary> /// <param name="services">The WebServiceType object to deserialize.</param> /// <returns>A XML string.</returns> public static string SerializeToXml(WebServiceType[] services) { XmlSerializer serializer = new XmlSerializer(typeof(MethodCheckType)); MemoryStream ms = null; StreamReader reader = null; StringBuilder builder = new StringBuilder(); try { ms = new MemoryStream(); reader = new StreamReader(ms); Object t = (Object)serializer.Deserialize(reader); } finally { reader.Dispose(); ms.Dispose(); } return null; } Maybe on my side is some confusion what "serialization" and "deserialization" means, sorry about that. But i hope now it is a bit clearer what i exactly mean.
Edit: First thanks to the answers below. The SerializeToXml Method seems to work now.
There is another problem: With the following code i get an error:
[XmlElement(ElementName = "MethodCheck")] public partial class MethodCheckType { } The error message is:
Attribute 'XmlElement' is not valid on this declaration type. Its only valid on 'property, indexer, field, param, return' declarations.
Could there be another using declaration i have to add? Or why this does not work?
WebServiceTypeand serialises them to an XML string, so that ReadXml can deserialise them and you test that the objects you get back are the same?