C# 从另一个网站调用一个网站上的Web服务;两者都托管在同一台服务器上

C# 从另一个网站调用一个网站上的Web服务;两者都托管在同一台服务器上,c#,web-services,iis,dns,C#,Web Services,Iis,Dns,我有一个服务器在一个IP下为多个网站提供服务,并在特定URL上绑定 但是,我托管的其中一个站点需要从位于同一服务器上的另一个IIS网站中的webservice(.asmx文件)中提取数据。代码在本地运行良好,但当我们将代码推送到服务器时,它似乎无法在本地解析查找。(得到可怕的“无法建立连接,因为目标计算机主动拒绝它”。我认为发生的情况是,它试图使用端点地址并进行DNS查找,但由于DNS查找最终解析为相同的IP,它实际上通过内存或管道或其他方式而不是网络来拉动流量,这导致IIS无法访问绑定到正确的

我有一个服务器在一个IP下为多个网站提供服务,并在特定URL上绑定

但是,我托管的其中一个站点需要从位于同一服务器上的另一个IIS网站中的webservice(.asmx文件)中提取数据。代码在本地运行良好,但当我们将代码推送到服务器时,它似乎无法在本地解析查找。(得到可怕的“无法建立连接,因为目标计算机主动拒绝它”。我认为发生的情况是,它试图使用端点地址并进行DNS查找,但由于DNS查找最终解析为相同的IP,它实际上通过内存或管道或其他方式而不是网络来拉动流量,这导致IIS无法访问绑定到正确的站点,所以整个过程都会失败

有没有一种方法可以使用windows主机文件或其他机制来修复这个明显的DNS问题?也许有人会对此有所了解,也许根本不是DNS。谢谢

更新-这里是一个有问题的域的快速分解。并没有特别编码或指向“localhost”。每个都使用完全限定的域名


DomainA.com是一个在提交表单时从DomainB.com调用web服务的网站。DomainA.com和DomainB.com都是在IIS中设置的“网站”,位于绑定到相同外部IP地址的同一服务器上。我认为问题在于,DomainA.com在提交表单时,会对DomainB.com进行DNS查找,而当它如果域是相同的IP地址,则在向DomainB.com发出请求时不使用域名。如果没有使用/发送域名,IIS不知道要连接到哪个站点,并且“目标计算机主动拒绝”连接。

您必须在配置文件中定位到您的Web服务吗

看一看您为使用它而生成的代理类。 主机通常硬编码到该文件中


如果您没有使用生产主机创建该文件(或服务引用),则该文件将指向您的开发Web服务。这将无法从您的生产计算机访问。

您很可能是通过本地地址(即本地主机)访问位于第二个IIS中的Web服务。请尝试使用外部DNS名称或在IIS管理器中添加localhost绑定。抱歉,事实并非如此。我使用的是完全限定的URL。不,这些URL都没有使用SSL,Matthew。您是否解决过此问题?我遇到了类似的问题不正确。主机指向生产服务器上的正确URL。问题是在中使用的域该URL指向使用Web服务的网站所拥有的相同IP。