有外部网络服务。
我可以从我的winform应用程序中调用它,但我无法从我的asp.net mvc Web应用程序调用它。
错误信息如下:
System.ServiceModel.EndpointNotFoundException: There was no endpoint listening at http://ihexds.nist.gov:9080/tf6/services/xdsrepositoryb that could accept the message. This is often caused by an incorrect address or SOAP action.
有没有什么可以配置我的mvc Web应用程序来使用它?
编辑:
以下是我调用Web服务的代码
WCF.Message msgInput, msgOutput;
msgInput = WCF.Message.CreateMessage(MESSAGE_VERSION, PROVIDEANDREGISTERDOCUMENTSETB_WSAACTION, request);
msgOutput = WCF.Message.CreateMessage(WCF.MessageVersion.Soap12WSAddressing10, "");
string endpointName = GetRepositoryEndPointName();
XDSRepository.XDSRepositoryClient client = new XDSRepository.XDSRepositoryClient(endpointName);
msgOutput = client.ProvideAndRegisterDocumentSet(msgInput);
答案 0 :(得分:1)
从您的评论来看,我认为您的问题与代理服务器有关。我认为您正在使用公司内部的代理服务器。您必须在web.config文件中指定您希望dotnet代码使用您登录的凭据。将其添加到您的web.config并再试一次:
<system.net>
<defaultProxy enabled="true" useDefaultCredentials="true" >
</defaultProxy>
</system.net>
你也可能正在使用.pac script。在这种情况下,您必须明确指定代理服务器,如下所示:
<system.net>
<defaultProxy useDefaultCredentials="true">
<proxy proxyaddress="http://proxyserver:proxyport"/>
</defaultProxy>
</system.net>