WCF服务应用程序和WCF服务库之间有什么区别?


118

我正在开发WCF Web服务,并且使用WCF服务应用程序模板来完成该任务。

创建“ WCF服务应用程序”是否满足此要求?通过WCF服务应用程序创建WCF服务库有什么优势?

Answers:


148

服务应用程序包括已经为您设置的网站托管服务商。服务库是主机可以引用和启动的服务库。

如果从服务库开始(推荐),则可以选择所需的任何主机(Windows服务,IIS / ASP.NET甚至是控制台应用程序),而您只是从新主机中引用您的库。选择服务应用程序会将您的主机限制为IIS / ASP.NET(尽管可以满足您的目的,但是会限制您可以使用的协议)。

编辑:自从我写这篇文章以来,IIS中的更改允许在ASP.NET激活的服务上使用多种协议,因此选择服务应用程序的限制比以前要少得多。


1
在IIS上托管时,有人知道有关新协议/绑定的信息吗?
艾伦·赖斯

@AndersonImes我知道这是一个旧帖子,但是希望您能提供帮助。我到处都是,找不到WCF服务是否打算替换.NET 3.5中的Web服务,因此为什么在.NET 4中删除了模板?谢谢。:)
Chiramisu 2012年

2
@Chiramisu WCF提供了更多优势和灵活性...我发现这些非常有用:Codeproject示例Stackoverflow问题
StoriKnow 2012年

@Sam谢谢Sam,非常有帮助。那么,WCF基本上可以完成Web服务可以完成的所有工作吗?我想知道是否有任何限制... :)
Chiramisu 2012年

1
@Chiramisu很乐意提供帮助!总是存在限制,但我想WCF的限制要比典型的Web服务少得多。
StoriKnow 2012年

10

如果您只有一个项目,那么如果您将其分开,只会看到增加的复杂性。当我有一些特殊的用例时,我不得不在Windows服务和IIS中托管时,我使用了一个库。

对于IIS,您可以将类和接口移动到库中,但将.SVC文件保留在Web项目中。您必须编辑.SVC文件以指向正确限定的类。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.