WebserviceTypeXSDファイルのツールxsd.exeから取得したという名前のクラスがあります。
ここで、WebServiceTypeオブジェクトのインスタンスを文字列に逆シリアル化します。これどうやってするの?
MethodCheckTypeparamsはのようにオブジェクトが持つWebServiceType配列。
私の最初の試みは、それをシリアル化したようなものでした:aXmlSerializerとaStringWriterを使用しました(シリアル化中にはを使用しました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ます。