WCF服务和WCF服务应用程序的区别

Posted

技术标签:

【中文标题】WCF服务和WCF服务应用程序的区别【英文标题】:Difference between WCF Service and WCF Service Application 【发布时间】:2011-10-10 23:50:54 【问题描述】:

在 Visual Studio 2010 中,有两个选项可以创建 WCF 服务。第一个是File | New | Projects... | WCF | WCF Service Application。第二个是通过File| New | Web Site... | Visual C# | WCF Service。他们两个看起来都一样。这两个项目到底有什么区别?

【问题讨论】:

***.com/questions/1204365/…希望对您有所帮助 【参考方案1】:

上述链接的信息在这里:

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

如果您从服务库(推荐)开始,您可以选择任何您想要的主机(Windows 服务、IIS/ASP.NET 甚至控制台应用程序),然后您只需从新主机中引用您的库.选择服务应用程序将您的主机限制为仅 IIS/ASP.NET(尽管这可能适合您的目的,但会限制您可以使用的协议)。

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

你所拥有的只是一个项目,如果你为了它而分开,我认为只会增加复杂性。当我有一些特定的用例必须同时托管在 Windows 服务和 IIS 中时,我使用了一个库。

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

问候

卡兰·沙阿

【讨论】:

正如我上面提到的,有 WCF 服务应用程序和 WCF 服务(来自网站)。在上面给出的链接和详细答案中,您描述了 WCF 服务应用程序和 WCF 服务库之间的差异,但没有描述来自 File| New | Web Site... | Visual C# | WCF Service 的 WCF 服务与 WCF 服务应用程序之间的比较。你能给我关于这个话题的更多信息吗?无论如何感谢您的链接。很高兴知道。【参考方案2】:

一个是用于从文件创建 WCF 服务的网站 |新 |网站...|视觉 C# | WCF Service 和另一个是用于创建 WCF 服务应用程序的 Project。

服务库是主机可以引用和启动的服务库。服务应用程序包括已经为您设置的网站主机。 如果您从服务库开始,您可以选择任何您想要的主机,例如 Windows 服务、IIS/ASP.NET,甚至是控制台应用程序,您只需从新主机中引用您的库。选择服务应用程序会将您的主机限制为仅 IIS/ASP.NET。

【讨论】:

以上是关于WCF服务和WCF服务应用程序的区别的主要内容,如果未能解决你的问题,请参考以下文章

WCF 服务库和 WCF 服务应用程序之间的区别

WCF服务库和WCF服务应用程序之间的区别[重复]

asp.net web 方法和 wcf 服务有啥区别?

结合 WCF 服务库和 WCF 服务应用程序

WCF 数据服务还是只是 WCF 服务?

WCF 服务、应用程序域和网站