0

Web サービス要求から返される複雑なオブジェクトをシリアライズしたいと考えています。これが私の仮定です。呼び出し元のクライアントに戻る前に、シリアル化された (デフレートされた) オブジェクトを (文字列ではなく) XML ドキュメントに格納する必要があります。私は、XMLDocument にロードするだけで問題なくデシリアライズできていると「信じています」。ただし、私が間違っている可能性があり、逆シリアル化が間違っている可能性があるため、XmlDocument が爆発します。コードは次のとおりです。

私の複雑なオブジェクト:

namespace ABCTest
{
    [XmlRoot("TapRoot")]
    public class UserDetails
    {
        [XmlElement]
        public String AccountName { get; set; }
    }
}

私のシリアル化コード:

FYi: UsrDtls == List<UserDetails>

XmlSerializer Obj2XML = new XmlSerializer(UsrDtls.GetType());
Stream strWriter = Stream.Null;
XmlWriter XWriter = new XmlTextWriter(strWriter, Encoding.Unicode);
XmlDocument XDoc = new XmlDocument();

Obj2XML.Serialize(XWriter, lst_Exercises);
string abc = Obj2XML.ToString(); //debugging line to attempt to browse the obj2xml object
XDoc.LoadXml(abc);

return XDoc;
4

1 に答える 1

1

.NET の Web サービスについてどこで学んだかわかりません。オブジェクトを返すだけです。Web サービス インフラストラクチャが処理します。

WCF サービスを使用しているのか、従来の ASMX サービスを使用しているのかはわかりません。ASMX サービスは、新しい開発には使用しないでください。

「返品するだけ」でも問題が解決しない場合は、受け取った例外の詳細を投稿してください。

于 2012-12-28T01:30:24.740 に答える