【问题标题】:SoapException Server was unable to process request on ASMX webservice in MVC siteSoapException Server 无法处理 MVC 站点中 ASMX Web 服务上的请求
【发布时间】:2011-07-12 03:09:38
【问题描述】:

我在尝试访问 MVC 站点中的 .asmx Web 服务时遇到异常。我已经尝试了很多事情,比如在控制台应用程序中更新 Web 引用并构建另一个快速应用程序进行测试,但无法通过这个问题。如果我从 svc 变量中提取 URL,我可以直接浏览到它。

异常详情

System.Web.Services.Protocols.SoapException 发生消息=服务器无法 处理请求。 ---> 值不能 为空。参数名称:uriString
源=System.Web.Services 演员="" 郎=""节点=""角色=""
堆栈跟踪: 在 System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage 消息、WebResponse 响应、流 responseStream,布尔异步调用) 在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(字符串 方法名,对象 [] 参数) 在 ClarityIntegration.SendTrackerDataToClarity() 在 [已编辑].Reference.cs:第 78 行 在 [已编辑].Program.Main(String[] args) 在 [已编辑].Program.cs:第 33 行
内部异常:

控制台应用程序代码

var svc = new TrackerClarityService.ClarityIntegration()
    {
        Url = url,
        Credentials =
            new System.Net.NetworkCredential("user", "pass", "domain")
    };
svc.SendTrackerDataToClarity();
svc.Dispose(); 

问题已解决

异常来自 Web 服务本身。有一些全局变量没有通过应用程序本身初始化的 .asmx 调用直接初始化。

对 Web 服务中的变量进行一些简单检查并设置需要设置的内容已解决了该问题。

【问题讨论】:

  • 这在控制台应用程序中有效吗?如果不是,则问题肯定与asp.netasp.net-mvc 无关,并且这些标签似乎与您的问题无关。
  • Darrin - 目前这只是一个单一的解决方案,所以我正在我的控制台应用程序中测试 Web 服务,这就是现在的问题所在。我现在不知道这是否是网络服务问题。
  • 该错误实际上与Web Service有关,而不是控制台应用程序。 asp.net-mvcasp.net 标签与这个问题非常相关。
  • @RSolberg,因此您可以从控制台应用程序成功调用您的 Web 服务。此外,如果错误与 Web 服务有关,则这两个标签不相关。 web-services 标签是相关的。
  • @Darin:否,因此显示控制台应用程序尝试调用 Web 服务的异常。

标签: c# asp.net asp.net-mvc web-services exception


【解决方案1】:

问题已解决

异常来自 Web 服务本身。有一些全局变量没有通过应用程序本身初始化的 .asmx 调用直接初始化。

对 Web 服务中的变量进行一些简单检查并设置需要设置的内容已解决了该问题。

【讨论】:

  • 我遇到了这个问题,但我不明白“对 Web 服务中的变量进行一些简单的检查并设置需要设置的内容已经解决了这个问题”。你能举个例子吗?
【解决方案2】:

如果使用基本身份验证,这已经解决了我过去的问题:

NetworkCredential nc = new NetworkCredential();
nc.Domain = "domain"
nc.UserName = "user"
nc.Password = "pwd"

Uri uri = new Uri(svc.Url);
ICredentials credentials = nc.GetCredential(uri, "Basic");
svc.Credentials = credentials;

【讨论】:

    【解决方案3】:

    这里是队长,这是当 WebReference 已实例化,但没有定义 URL 或给定 URL 为空时的消息,并且调用了一个方法。空 URL 的来源可能是 app/web.config 文件中的缺失值。

    【讨论】:

    • “船长”是什么意思?
    猜你喜欢
    • 2016-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多