Nig*_*haw 37
虽然将WCF服务作为类库创建可以提供更大的灵活性,但这种灵活性需要付出代价,而且假设更灵活的解决方案始终是首选解决方案,或者灵活性较低的解决方案是幼稚的或者是幼稚的,这是错误的.仅适用于"简单的教学目的".
绝大多数WCF服务作为Web服务托管,永远不会以任何其他方式部署.
以下是使用WCF服务应用程序而不是WCF类库的三个优点:
如果将Web服务创建为类库,则配置文件将是app.config文件而不是web.config文件.App.config文件本身不支持多个配置文件,并且配置转换web.config文件的方式.如果您想在app.config文件上进行配置转换,则必须使用第三方解决方案,例如Slow Cheetah.
在发布站点时,如果您使用WCF服务应用程序,则可以充分利用Web Deploy(http://www.iis.net/downloads/microsoft/web-deploy),这是一种强大而灵活的方法.将您的解决方案发布到IIS.
如果您决定自动构建和部署以便与TFS持续集成,那么您将需要自动发布服务.如果使用WCF服务,则可以配置TFS以运行Web Deploy,它将根据目标构建配置合并您的web.config文件,执行增量发布,在服务器上启用没有管理员权限的发布以及其他好处.如果您使用WCF类库,则必须编写自定义工作流解决方案以合并app.config文件,使用xCopy进行部署,并且通常需要更加艰难的时间来自动部署.
总之,通常情况下,更灵活的解决方案是以丢失特定工具支持为代价的.如果像大多数WCF服务解决方案一样,您的应用程序将始终托管在IIS中,您可以考虑通过使用WCF服务应用程序而不是WCF类库来利用此支持.
mar*_*c_s 20
我总是创建一个WCF库作为类库 - 它更容易使用.您可以完全灵活地在IIS中托管您的WCF服务(通过在其中提供虚拟目录和.svc文件),或者您可以编写自己的自托管EXE并从中引用类库中的WCF服务.
将WCF服务直接放入Web项目似乎是一个非常糟糕的主意,可能仅用于非常简单的教学目的 - 只是为了展示如何开始.对于"实时"系统,我永远不会这样做.
渣
Jus*_*ner 10
"WCF服务应用程序"本身是一个依赖于WCF技术的直接Web服务应用程序(类似于ASP.NET Web服务开发).另一方面,"WCF服务库"是一个可以部署为Web的编译组件.服务或Windows服务,甚至作为自定义托管应用程序的一部分.
| 归档时间: |
|
| 查看次数: |
29944 次 |
| 最近记录: |