Web Services .NET中SOAP端点地址

s5a0g9ez  于 2022-11-15  发布在  .NET
关注(0)|答案(1)|浏览(134)

我正在尝试使用.NET 4.7.2格式化SOAP中的端点
如果我通过Visual Studio运行本地,我会得到正确的地址格式:服务器
但是当我发布到服务器时,我最终得到的地址是:网站
我已经在Web.config中设置了地址

<services>
  <service name="MyNamespace.MyService" 
           behaviorConfiguration="MyNamespace.behaviorServiceConfig">
    <endpoint address="" 
              binding="basicHttpBinding" 
              contract="MyNamespace.IMyService"/>
    <endpoint address="mex" 
              binding="mexHttpBinding" 
              contract="IMetadataExchange"/>
  </service>
</services>

在端点地址="”中,我是否还尝试添加/wsdl/IMyService/
我还使用以下代码从地址中删除了Service.svc文件:

<serviceHostingEnvironment
    aspNetCompatibilityEnabled="true" 
    multipleSiteBindingsEnabled="true" 
    minFreeMemoryPercentageToActivateService="0">
  
    <serviceActivations>
        <add factory="System.ServiceModel.Activation.ServiceHostFactory" 
             relativeAddress="./wsdl/MyService/Service.svc"
             service="MyNamespace.MyService" />
     </serviceActivations>

</serviceHostingEnvironment>

我的目标是获得如下所示的已发布端点地址:您可以在
编辑:
我可以将客户端连接到http://localhost:9999/wsdl,但需要路径为http://localhost:9999/wsdl?/IMyService/

<services>
        <service behaviorConfiguration="IMyService.MyServiceBehavior"
            name="IMyService.MyService">
            <endpoint address="soap" binding="basicHttpBinding" contract="IMyService.MyService" />
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
            <host>
                <baseAddresses>
                    <add baseAddress="http://localhost:9999" />
                </baseAddresses>
            </host>
ac1kyiln

ac1kyiln1#

我通过创建自托管WCF服务使其工作
我在http://localhost:52066/wsdl/IMyService/上有wsdl,客户端可以找到服务,但是当我尝试运行客户端时,它尝试连接到http://localhost:52066/soap/IMyService/失败
当添加地址时,我得到错误,我只能有一个http连接。
我还尝试创建了一个.asmx页面,我无法使其成为自承载的,但我可以连接到那里,这可能是因为我实现了C#Web服务接口,所以它是从MyService-class生成的
谁能给予我点提示

相关问题