我的webservice名称空间出现问题。它在我的计算机上工作正常,但是当我将它上传到团队基础服务器时,它对任何其他人都不起作用。
我在webservice中的代码(位于自己应用程序中的'Sentry.SAID'命名空间中:
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.ComponentModel
Imports Sentry.SAID.Core
Imports Sentry.SAID.Web
<System.Web.Services.WebService(Namespace:="http://localhost")> _
<System.Web.Services.WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<ToolboxItem(False)> _
Public Class Powerbeatws
Inherits System.Web.Services.WebService
'Sentry.SAID.Web'应用程序中的'Sentry.SAID'名称空间
中的XML文件 <system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="PowerbeatwsSoap" closeTimeout="00:01:00" openTimeout="00:01:00"
receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false"
bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="11000000" maxBufferPoolSize="524288"
maxReceivedMessageSize="11000000"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://localhost:62862/Powerbeatws.asmx" binding="basicHttpBinding"
bindingConfiguration="PowerbeatwsSoap" contract="PowerbeatSR.PowerbeatwsSoap"
name="PowerbeatwsSoap" />
</client>
</system.serviceModel>
如果我将端点地址更改为localhost / Powerbeatws.asmx,则会引发错误。任何想法是如何使用localhost在单独的计算机上工作?
目前,要使其在任何其他计算机上运行,必须添加新的服务引用。
答案 0 :(得分:0)
使用Web服务时,我们必须记住,涉及2个实体,托管的服务和使用它的客户端。
如果两者都要在其绑定中使用localhost,则它们必须采用相同的端口号,或者从TFS下载代码的人必须将端点绑定从localhost:62862更改为服务在其计算机上运行的任何端口。 / p>
您也可以通过Web服务上的配置或通过代码来创建特定的托管地址,其中每个人都使用众所周知的端口,例如: 51000.将端点绑定更改为localhost:51000,并确保服务主机正在侦听端口51000,它应该可以正常工作。
我认为团队的问题是他们的本地主机上没有使用相同的端口号,因此绑定不起作用。它适用于您的计算机,因为您在端口62862上托管服务。
但可能是错的。不确定他们看到的异常是什么,但这在共享Web服务代码时并不常见。