【发布时间】:2012-08-13 16:26:13
【问题描述】:
假设我有一个像这样的简单 wcf 服务
[DataContract]
public enum VMType : int
{
[EnumMember]
Unknown = 0,
[EnumMember]
Virtual = 1,
[EnumMember]
Physical = 2,
}
[DataContract]
public class ClientRequest
{
[DataMember]
public string Code { get; set; }
[DataMember]
public VMType VMType { get; set; }
}
[ServiceContract]
public interface IService
{
[OperationContract]
int GetStatus(ClientRequest request);
}
如果将枚举 VMType 更改为
public enum VMType : byte
{
这是否被认为是一个重大变化?旧的 WCF 客户端是否仍能连接到新的服务主机?
根据Enumeration Types in Data Contracts
通常数据协定包括枚举成员名称,而不是数值
【问题讨论】: