我有一个wcf服务,我尝试使用svcutil和添加服务引用添加到客户端测试项目。在这两种情况下都没有创建新的配置文件,随后由于没有看到端点而导致客户端测试无法运行。为什么会出现这种情况,这是我的WCF服务的web.config文件。
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" strict="false" explicit="true" targetFramework="4.0" />
</system.web>
<system.serviceModel>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
<bindings>
<webHttpBinding>
<binding name="webHttpBinding" crossDomainScriptAccessEnabled="true" />
</webHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="web">
<webHttp />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="webHttpBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="webHttpBehavior" name="WcfInstanceRules2.Service1">
<endpoint address=""
binding="webHttpBinding" bindingConfiguration="webHttpBinding"
contract="WcfInstanceRules2.IService1"
behaviorConfiguration="web"/>
</service>
</services>
答案 0 :(得分:1)
如果您正在使用webHttpBinding,那么您正在编写RESTful服务,对吧? REST服务不是通过Visual Studio或像其他基于SOAP的服务那样通过SvcUtil.exe“消耗”的(例如,使用基于SOAP的绑定,如basicHttpBinding或wsHttpBinding等)。您可以通过从jQuery中调用它来“使用”服务:
$.getJSON("Service1.svc/uriTemplateNameHere", { param: myParameter },
function (result) {
// do something
});
您可以发布您的WCF代码吗?