我们有一项有状态的服务,可以在self
中保存数据。我们注意到今天此服务中缺少少量数据。
我们最近有一个代码更新,它更改了存储在字典中的其中一个模型的命名空间和程序集,但是数据协定本身没有改变。
在:
ReliableDictionary
后:
namespace MainProject.StatefulService.Models
{
[DataContract]
public class ColorElement
{
[DataMember(Name = "Color")]
private readonly Color color;
// Shortened for clarity.
}
}
有没有办法更改模型的程序集/命名空间可能会导致可靠字典出现问题?
答案 0 :(得分:1)
更改类名称或命名空间将影响序列化格式。
我没有尝试过它,但我认为如果你在datacontract属性中指定名称和命名空间,那么它们将采用序列化格式而不是类和程序集命名空间,以便以后对类的任何更改都会赢得#39 ; t影响序列化格式 - 但这只是基于我习惯使用WCF而不是任何与结构相关的推测。