是否可以通过 RoutingService 将对象发送到对等 WCF 服务,而无需让路由器知道这些对象的确切类型?
我的意图是一次性创建一个路由器,然后能够添加新的 WCF 服务,将它们动态添加到路由表中,并允许客户端与这些服务进行通信而无需停止,更改路由器的代码,然后启动再说一遍。
我正在考虑这样的通用合同:
[DataContract]
public class RequestObject
{
}
[DataContract]
public class ReplyObject
{
}
[ServiceContract]
public interface IGenericServiceInterface
{
[OperationContract]
ReplyObject DoJob(string jobType, RequestObject request);
}
我可以把它放在一个公共库中,所有 3 个组件都链接到(客户端、路由器、服务)。但是,我不确定是否可以派生新的子类以允许添加具有新数据交换的新客户端/服务,而无需更改路由器。
有什么建议吗?当通过客户端强制执行加密直到服务时,解决方案是否可以工作?
提前致谢。