【发布时间】:2018-02-19 07:50:39
【问题描述】:
我想从我的 wcf rest 服务迁移到 web api。拥有包装服务是否是个好主意,即从 API 端点调用 WCF 服务?请提出建议。
谢谢
【问题讨论】:
标签: .net asp.net-web-api wcf-rest
我想从我的 wcf rest 服务迁移到 web api。拥有包装服务是否是个好主意,即从 API 端点调用 WCF 服务?请提出建议。
谢谢
【问题讨论】:
标签: .net asp.net-web-api wcf-rest
如果您的服务没有 WCF 特定代码并且仅包含业务逻辑,那么这将是一个好主意。您的 WEB API 控制器将只是包装器,主要处理路由、参数映射和返回 HTTP 状态代码以及适当的结果。
编辑:
如果您的 WCF 服务有一些 WCF 特定代码,例如身份验证,那么我建议提取独立于基础架构的代码。然后,您将能够使用从您的 WEB API 控制器中提取的新类。
在这种大规模重构的情况下,我通常建议使用集成或端到端测试来覆盖整个组件。可以在现有代码和基础设施之上编写测试。提取代码并使用 WEB API 控制器包装后,您将能够运行相同的测试套件以确保没有重大更改。
关于 WEB API 中的身份验证,我建议查看以下 SO:Web API Authentication best practice
【讨论】: