关于版本之间的更改,我已经阅读了这个post,但它对我没有帮助。 我有以下wcf服务:
[ServiceContract]
public interface IService1
{
[OperationContract]
MyEnum Foo();
}
[DataContract]
public enum MyEnum
{
[EnumMember]
first,
[EnumMember]
Second,
}
我正在寻找一种方法来添加新的枚举成员,仅限于服务端。假设我的客户端使用的是旧版本的代理,没有我要添加的新枚举成员。 我的目标是避免序列化异常,我希望我的客户端足够聪明来处理这种情况,忽略新值或任何东西。有任何想法吗?
答案 0 :(得分:2)
根据您链接的问题中的答案,向枚举添加新元素不会破坏兼容性。
将崩溃的内容发送给枚举列表中没有该值的客户端。
要通过仅更改服务器端来解决此问题:
这可能比它的价值更多,这取决于你拥有多少客户以及更新它们的难度。