Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为我的对象添加基类会破坏.NET/XML反序列化吗?_.net_Serialization - Fatal编程技术网

为我的对象添加基类会破坏.NET/XML反序列化吗?

为我的对象添加基类会破坏.NET/XML反序列化吗?,.net,serialization,.net,Serialization,基类将只包含方法。如果不更改包含程序集的版本号,那么添加基类对于二进制序列化来说应该不会有问题,对于XML来说,这一点都不重要,因为它与实际类型紧密耦合 只需确保基址也被标记为[Serializable],用于二进制序列化。 我刚刚测试并确认了这一点 使用二进制格式化程序序列化了以下类 [Serializable] public class Test { public string Name { get; set; } } 已获得以下base64编码输出

基类将只包含方法。

如果不更改包含程序集的版本号,那么添加基类对于二进制序列化来说应该不会有问题,对于XML来说,这一点都不重要,因为它与实际类型紧密耦合

只需确保基址也被标记为[Serializable],用于二进制序列化。 我刚刚测试并确认了这一点

使用二进制格式化程序序列化了以下类

[Serializable]
    public class Test
    {
        public string Name { get; set; }
    }
已获得以下base64编码输出:

aaaaaad/////aqaaaaaamagaaaaepdb25zb2xlqxbwbgljyxrpb24xlcbwzxjzaw9upteumc4wljas IEN1BHR1CMU9BMV1DHJHBCWGUHVIBGLJS2V5VG9RZW49BNVSBAUAIAENVBNNVBGVBCHBsWnHDGLV BJEUHJVZ3JHBSTUZXN0AQAABU8TMFTZT5RX19Cywnraw5NRMLLBGQBAGAAAYDAAABWHC2FUCW==

然后添加以下用于测试的基类:

[Serializable]
public class Base
{
   public void Dhuz() { }
}

并且再次成功地反序列化了base64编码的内容,没有任何问题。

如果不更改包含程序集的版本号,那么添加基类对于二进制序列化来说应该不是问题,对于XML来说,这一点都不重要,因为它与实际类型紧密耦合

只需确保基址也被标记为[Serializable],用于二进制序列化。 我刚刚测试并确认了这一点

使用二进制格式化程序序列化了以下类

[Serializable]
    public class Test
    {
        public string Name { get; set; }
    }
已获得以下base64编码输出:

aaaaaad/////aqaaaaaamagaaaaepdb25zb2xlqxbwbgljyxrpb24xlcbwzxjzaw9upteumc4wljas IEN1BHR1CMU9BMV1DHJHBCWGUHVIBGLJS2V5VG9RZW49BNVSBAUAIAENVBNNVBGVBCHBsWnHDGLV BJEUHJVZ3JHBSTUZXN0AQAABU8TMFTZT5RX19Cywnraw5NRMLLBGQBAGAAAYDAAABWHC2FUCW==

然后添加以下用于测试的基类:

[Serializable]
public class Base
{
   public void Dhuz() { }
}
并且成功地再次反序列化了base64编码的内容,没有出现任何问题