У меня есть класс с именем WebserviceType
, который я получил из инструмента xsd.exe из файла XSD.
Теперь я хочу десериализовать экземпляр объекта WebserviceType
для строки.
Как я могу это сделать?
Объект MethodCheckType
имеет в качестве параметров a WebserviceType
массив.
Моя первая попытка была такой, как я сериализовал ее: с XmlSerializer
и a StringWriter
(при сериализации я использовал StringReader
).
Это метод, в котором я сериализую объект WebserviceType
:
XmlSerializer serializer = new XmlSerializer(typeof(MethodCheckType));
MethodCheckType output = null;
StringReader reader = null;
// catch global exception, logg it and throw it
try
{
reader = new StringReader(path);
output = (MethodCheckType)serializer.Deserialize(reader);
}
catch (Exception)
{
throw;
}
finally
{
reader.Dispose();
}
return output.WebService;
Изменить:
Возможно, я мог бы сказать это разными словами: у меня есть экземпляр этого объекта MethodCheckType
, с другой стороны, у меня есть документ XML, из которого я сериализовал этот объект. Теперь я хочу преобразовать этот экземпляр в XML-документ в виде строки. После этого я должен подтвердить, что обе строки (XML-документов) одинаковы. Это я должен сделать, потому что я делаю модульные тесты первого метода, в котором я прочитал XML-документ в StringReader
и сериализую его в объект MethodCheckType
.