SOA 开发人员通常如何在 Visual Studio 中构建其 Web 服务 (WCF) 解决方案

本文关键字:Web 构建 服务 解决方案 WCF Studio 开发 常如何 Visual SOA | 更新日期: 2023-09-27 18:33:13

我正处于应用程序设计的初始阶段。 将有以下内容:

  • 网页界面
  • 网络服务
  • 利用其他预先存在的 Web 服务

我是Windows服务和SOA的新手,特别是在Visual Studio的上下文中。

我的问题是,我将如何在Visual Studio中设置此解决方案? 例如,我会

  • 将 Web UI 和服务调用放在同一个项目中,并将我的服务放在单独的项目中,然后将上述所有内容放在解决方案中?

开始构建我的解决方案以便可以对其进行可跟踪和测试的最佳方式是什么?

SOA 开发人员通常如何在 Visual Studio 中构建其 Web 服务 (WCF) 解决方案

我喜欢

像这样构建我的 WCF 解决方案:

协定(类库(
包含所有服务、操作、故障和数据协定。可以在纯 .NET-to-.NET 场景中在服务器和客户端之间共享

服务实现(类库(
包含实现服务的代码,以及实现此目的所需的任何支持/帮助程序方法。没有别的。

服务主机(可选 - 可以是 Winforms、控制台应用程序、NT 服务(
包含用于调试/测试或可能也用于生产的服务主机。

这基本上给了我服务器端的东西。

在客户端:

客户端代理(类库(
我喜欢将我的客户端代理打包到一个单独的类库中,以便它们可以被多个实际的客户端应用程序重用。这可以使用 svcutil 或"添加服务引用"并手动调整生成的可怕的 app.config 来完成,或者通过使用ClientBase<T>ChannelFactory<T>构造手动实现客户端代理(共享合约程序集时(。

1-n 实际客户端(任何类型的应用程序(
通常仅引用客户端代理程序集,或者如果共享合约程序集,则可能也引用该程序集。这可以是 ASP.NET,WPF,Winforms,控制台应用程序,其他服务 - 您的名字。

那边;我有一个漂亮而干净的布局,我一遍又一遍地使用它,我真的认为这使我的代码更干净,更易于维护。

这是受到米格尔·卡斯特罗(Miguel Castro(与卡尔·富兰克林(Carl Franklin(在DotNet Rocks TV上拍摄的极限WCF屏幕的启发-强烈推荐的屏幕投射!