0

我有一个 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>

4

1 回答 1

1

如果您使用的是 webHttpBinding,那么您正在编写一个 RESTful 服务,对吧?REST 服务不会像其他基于 SOAP 的服务一样通过 Visual Studio 或通过 SvcUtil.exe“使用”(例如,将使用基于 SOAP 的绑定,如 basicHttpBinding 或 wsHttpBinding 等)。您可以通过从 jQuery 之类的方式调用该服务来“使用”该服务:

$.getJSON("Service1.svc/uriTemplateNameHere", { param: myParameter },
            function (result) {
                // do something
            });

你能发布你的WCF代码吗?

于 2012-08-14T15:55:56.430 回答