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

WCF服务和WCF服务应用程序之间的区别,wcf,Wcf,在VisualStudio2010中,有两个选项可以创建WCF服务。第一个是File | New | Projects…|WCF | WCF服务应用程序。第二个是通过File | New | Web站点…|Visual C#| WCF服务。他们两个看起来都一样。这两个项目之间的具体区别是什么?上述链接的信息如下: 服务应用程序包括已为您设置的网站主机。服务库是主机可以引用和启动的服务库 如果您从服务库(推荐)开始,然后可以选择您想要的任何主机(windows服务、IIS/ASP.NET,甚至控制

在VisualStudio2010中,有两个选项可以创建WCF服务。第一个是
File | New | Projects…|WCF | WCF服务应用程序
。第二个是通过
File | New | Web站点…|Visual C#| WCF服务
。他们两个看起来都一样。这两个项目之间的具体区别是什么?

上述链接的信息如下:

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

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

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

你所拥有的只是一个项目,如果你分开去做,我只会看到它增加了复杂性。当我有一些特定的用例,需要在windows服务和IIS中托管时,我使用了一个库

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

问候


Karan Shah

上述链接的信息如下:

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

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

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

你所拥有的只是一个项目,如果你分开去做,我只会看到它增加了复杂性。当我有一些特定的用例,需要在windows服务和IIS中托管时,我使用了一个库

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

问候


Karan Shah

一个是用于从文件创建WCF服务的网站|新建|网站…| Visual C#| WCF服务,另一个是用于创建WCF服务应用程序的项目

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

一个是用于从文件|新建|网站…| Visual C | | WCF服务创建WCF服务的网站,另一个是用于创建WCF服务应用程序的项目

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

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