正如主题行所述,我正在将 C# 库公开到 WCF 服务中。最终我们希望公开所有功能,但目前范围仅限于库 API 的一个子集。本练习的目标之一是确保 WCF 服务使用请求/响应消息交换模式。所以接口(interface)/API 会改变,因为现有库不使用这种模式
我从实现服务契约(Contract)和请求/响应对象开始,但是在设计数据契约(Contract)时,我不确定该走哪条路。
我分为返回和使用 DataContract/DataMember 属性注释现有库类 VS 定义新类,这些新类类似于现有类的代理类。
有没有人有类似任务的经验或对哪种方式最有效有任何建议?我想指出,我们的团队拥有现有的库,所以确实有它的源代码。任何指示或最佳实践都会有所帮助
最佳答案
我的建议是使用适配器模式,在这种情况下基本上意味着创建全新的 DataContracts 和 ServiceContracts。这将允许一切独立变化,并允许您优化 WCF 的 WCF 内容和 API 的 API 内容(如果有意义的话)。你最不想做的就是沿着修改路线走,发现一旦你几乎完成,有些东西就不会正确映射。
关于wcf - 将库转换为 WCF Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6376900/