WebserviceType
XSDファイルのツールxsd.exeから取得したという名前のクラスがあります。
ここで、WebServiceType
オブジェクトのインスタンスを文字列に逆シリアル化します。これどうやってするの?
MethodCheckType
paramsはのようにオブジェクトが持つ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
ます。