gpt4 book ai didi

c# - C# 中的 XML 序列化

转载 作者:太空宇宙 更新时间:2023-11-03 11:56:45 25 4
gpt4 key购买 nike

我有一个显式实现接口(interface)的简单类型。

public interface IMessageHeader
{
string FromAddress { get; set; }
string ToAddress { get; set; }
}

[Serializable]
public class MessageHeader:IMessageHeader
{
private string from;
private string to;

[XmlAttribute("From")]
string IMessageHeade.FromAddress
{
get { return this.from;}
set { this.from = value;}
}

[XmlAttribute("To")]
string IMessageHeade.ToAddress
{
get { return this.to;}
set { this.to = value;}
}
}

有没有办法序列化和反序列化 IMessageHeader 类型的对象??

尝试时出现如下错误

“无法序列化接口(interface) IMessageHeader”

最佳答案

您无法序列化 IMessageHeader,因为您无法执行 Activator.CreateInstance(typeof(IMessageHeader)),而序列化将在幕后执行此操作。你需要一个具体的类型。

你可以做 typeof(MessageHeader) 或者你可以说,有一个 MessageHeader 的实例然后做

XmlSerializer serializer = new XmlSerializer(instance.GetType())

关于c# - C# 中的 XML 序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59986/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com