【发布时间】:2009-11-10 10:17:23
【问题描述】:
我想知道是否可以让 WCF 确保连接两侧的 DataContracts 完全相同(如果不是,则在尝试连接时抛出异常)。
例如,想象一下这个服务:
[DataContract]
enum State
{
[EnumMember]
Red,
[EnumMember]
Yellow,
[EnumMember]
Green
}
[ServiceContract]
interface MyService
{
[OperationContract]
void SetState(State newState);
}
现在假设服务已更新,现在支持新状态“橙色”。客户端仍然具有如上所示的 DataContract。
现在我希望客户端对服务的每次调用都失败,因为客户端和服务没有使用相同的 DataContract。这可能吗?
提前感谢您的帮助!
【问题讨论】:
-
恐怕这是不可能的。
-
可惜了。谢谢你的回答。看来我必须在这种情况下找到一些丑陋的解决方法以确保兼容性。
标签: c# wcf enums service datacontract