【发布时间】:2013-11-12 19:51:03
【问题描述】:
我需要从 ASP.NET MVC 应用程序调用 WCF 服务。设计 ASP.NET MVC 和 WCF 服务通信的更好方法是什么?
控制器保留对 WCF 服务的引用,并在需要时调用服务方法。
Controller 使用 DI 容器,例如统一解析 WCF 服务实例。它仍在控制器类中完成。
创建一个专门用于与 WCF 服务通信的服务中介类。控制器调用中介类。
当一个服务被多个控制器使用并且一个控制器可能调用多个服务时,考虑一个相当复杂的场景
【问题讨论】:
-
你在多少个地方进行 WCF 调用(或重用逻辑)?如果它在一个控制器中,就在那里做。如果您发现自己重复执行相同的调用,则将其拆分为中间服务。保持您的代码“干燥”。
-
您可以在您的项目中添加服务层,您可以在其中实现所有WCF服务操作并实现该层的抽象视图,以便客户端类处理抽象视图...
标签: c# asp.net-mvc wcf asp.net-mvc-4