[更新]通过生成新的web.config解决了问题。可能的错误是第二个端点(“mex”)。 [更新/
我在IIS中有一个Web服务。
我正在尝试调用一个函数,但我得到一个错误消息,如:
没有可以通过操作“http://Datenlotsen.Cyquest/ICyquestService/ValidateSelfAssessment”
接受消息的频道我在标准网站的IIS中托管它。在那里,我创建了一个名为“CyQuestwebservice”的虚拟目录。对于客户端配置我正在使用Soap UI。该工具从wsdl生成客户端配置。
我的webconfig看起来像这样,你能帮助我吗?:
<system.serviceModel>
<extensions>
<behaviorExtensions>
<add name="wsdlExtensions" type="WCFExtras.Wsdl.WsdlExtensionsConfig, WCFExtras, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
</behaviorExtensions>
</extensions>
<services>
<service behaviorConfiguration="CyquestWebService.Service1Behavior"
name="CyquestWebService.CyquestService">
<endpoint address="" behaviorConfiguration="EndPointBehavior"
binding="wsHttpBinding" bindingNamespace="http://Datenlotsen.Cyquest"
contract="CyquestWebService.ICyquestService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" bindingNamespace="http://Datenlotsen.Cyquest"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="EndPointBehavior" >
<wsdlExtensions location="http://wssdev04.datenlotsen.intern/Cyquestwebservice/CyquestService.svc" singleFile="True"/>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="CyquestWebService.Service1Behavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
<system.diagnostics>
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="traceListener"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData= "c:\log\Traces.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>
</configuration>
答案 0 :(得分:0)
通过生成新的web.config解决了问题。可能的错误是第二个端点(“mex”)。
答案 1 :(得分:0)
尝试在“请求属性”中将“跳过SOAP操作”设置为true。
我有一个类似的问题,使用SoapUI测试wsHttpBinding。