gpt4 book ai didi

c# - 序列化对象

转载 作者:行者123 更新时间:2023-11-30 15:48:17 25 4
gpt4 key购买 nike

我是序列化的新手,我这辈子都想不出如何解决我遇到的这个异常……

我有一个具有以下结构的对象

[XmlRoot("MaxCut2")]
public class MaxCut2File : IFile
{
public MaxCut2File()
{
MyJob = new Job();
Job.Reference = "MyRef";
}

[XmlElement("JobDetails", typeof(Job))]
public IJob MyJob
{
get;
set;
}
}

一个界面...

   public interface IJob
{
string Reference { get; set; }
}

还有一个类

[Serializable()]
public class Job : IJob
{
[XmlElement("Reference")]
public string Reference { get; set; }
}

当我尝试序列化 MaxCut2File 对象的实例时出现错误

{“无法序列化类型为‘MaxCut2BL.Interfaces.IJob’的成员‘MaxCut2File.MaxCut2File.MyJob’,有关详细信息,请参阅内部异常。”}“反射(reflect)类型‘MaxCut2File.MaxCut2File’时出现错误。”

但是,如果我将我的属性 MyJob 从 IJob 类型更改为 Job 类型,它工作正常...

有什么想法吗?

最佳答案

有个小技巧你可以试试:

Serializing an interface

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

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