C#windows应用程序 - 希望将我的业务和数据层保存在单独的机器中并使用WCF访问它

Kum*_*ran 5 c# wcf

我正在开发一个已经拆分为图层(UI,业务和数据层)的Windows应用程序.我希望将我的业务和数据层保存在单独的机器中,以便用户需要在他的机器中安装UI层.使用WCF Web服务并通过它访问我的业务层和数据层是一个好主意吗?

Mak*_*kov 0

其实这取决于...

如果您想将只是薄的 UI 层移动到用户计算机,然后通过每个用户操作调用您的服务,那么我认为这是一个非常糟糕的主意。因为在这种情况下,用户拥有一个 Windows 应用程序,它实际上像 Web 应用程序一样响应(当然,如果您考虑通过互联网而不是本地网络进行通信)。因此,如果我是您,我会更好地创建一个多租户 Web 应用程序,该应用程序使用您已实现的所有业务逻辑。此外,这还可以防止您遇到很多版本控制问题,因为您可以完全控制 UI 应用程序,这与 Windows 应用程序不同,当您必须处理解决方案的多个版本或至少实现一些错误处理逻辑以使所有用户升级时到较新的版本以继续工作。

但是,如果您的应用程序主要离线工作,并且只有一些真正需要对所有用户通用的逻辑,那么您的选择应该是 WCF。它为您提供了在配置级别保护和配置通信通道的所有工具,甚至无需重建应用程序。还有很多用于绑定和行为配置的内置选项。

希望能帮助到你。