不使用.svc文件创建WCF服务

我在运行包含wcf服务的少量文件时遇到问题。 创建的服务没有配置文件,也没有.svc文件。 是否可以在没有.svc文件的情况下运行服务。 这是2个简单的C#类文件,它们具有完整的服务要求,如服务合同和操作合同。

我试过从另一个类调用它,但它给出了这个错误:“一个类型库的输出类型的项目无法直接启动”

我的问题是:是否有必要拥有service.svc文件?

如果您不在IIS中托管服务,则不需要.svc。 IIS中.svc的原因是:

IIS中托管的WCF服务在IIS应用程序中表示为特殊内容文件(.svc文件)。 此模型类似于ASMX页面在IIS应用程序内表示为.asmx文件的方式。 .svc文件包含特定于WCF的处理指令(@ServiceHost),该指令允许WCF托管基础结构激活托管服务以响应传入消息。

看看WCF WebAPI它有很多很酷的点点滴滴,可以让你做一些事情,比如在IIS之外托管或通过Binding托管。 本文将指导您完成一些基本服务。 http://www.tugberkugurlu.com/archive/introduction-to-wcf-web-api-new-rest-face-ofnet

但请注意,即使SelfHosting(在Windows进程中运行WCF服务),您仍然需要一个可执行文件(即您不能自己运行一个类库)

在IIS中托管服务时需要.svc文件。 该文件实际上是一个类似于.asmx文件的文本文件。 如果您使用任何文本编辑器打开它,您将看到一些详细信息,如.asmx文件。 如语言(C#/ VB),服务代码和服务名称,调试等。

如果你没有在IIS上托管,那么拥有svc文件是不必要的。 自托管是没有svc文件的例子。