0

ジェネリック リストをシリアル化しようとすると、次のエラーが発生します。

ここに私のコードがあります

            XmlSerializer serializer = new XmlSerializer(typeof(List<System.Reflection.ParameterInfo>));
            XDocument document = new XDocument();
            using (XmlWriter xmlWriter = document.CreateWriter())
            {
                serializer.Serialize(xmlWriter, parameterList);
            }
            return document.Root.ToString();
4

1 に答える 1

2

すべての型がシリアライズ可能というわけではありません。などのシリアライザーを使用する場合、関心のある部分を含む DTOXmlSerializerを作成するのが最善の方法です。次に例を示します。

public class Parameter {
    public string Name {get;set;}
    public string TypeName {get;set;}
    public bool ByRef {get;set;} 
}

次に、からそれを取り込み、それParameterInfoをシリアル化ます。ここでいくつかの問題があることに注意してください。たとえば、DefaultValuea を文字列としてシリアル化し、受信側で解析しない限り、 a をシリアル化するのは非常に不便です。

于 2012-07-10T13:18:30.553 に答える