You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Web Service解析错误排查求助

解决ASP.NET添加Web Service引用时的解析错误

以下是针对问题的具体排查和解决步骤:

  • 先验证Web Service本身的可用性
    运行你的WebService项目,在浏览器中直接访问 http://localhost:[你的项目端口]/CheckID.asmx。如果页面无法正常加载或显示报错,说明服务本身存在问题:

    • 检查CheckID.asmx的首行指令是否与后台类匹配,比如:
      <%@ WebService Language="C#" CodeBehind="CheckID.asmx.cs" Class="WebService.CheckID" %>
      
      确保Class属性的值和后台CheckID.asmx.cs中的命名空间+类名完全一致。
    • 排查后台代码的语法错误,确认类继承自System.Web.Services.WebService,且WebMethod标记正确。
  • 检查服务引用的地址正确性
    添加服务引用时,必须输入服务运行后的有效URL(比如本地调试的localhost地址),不能直接填写本地文件路径。如果是远程服务,确保该URL能在浏览器正常访问。

  • 配置WebService项目的协议支持
    打开WebService项目的Web.config,在<system.web>节点下添加或确认以下配置,确保服务支持WSDL的HTTP获取:

    <webServices>
      <protocols>
        <add name="HttpGet"/>
        <add name="HttpPost"/>
      </protocols>
    </webServices>
    
  • 清理并重新生成项目
    依次清理WebService项目和引用它的客户端项目,再重新生成整个解决方案,之后尝试重新添加服务引用,避免编译缓存导致的异常。

  • 手动生成代理类绕开可视化添加流程
    如果上述步骤无效,使用svcutil.exe工具手动生成代理类:

    1. 打开Visual Studio开发者命令提示符
    2. 运行命令(替换为你的服务URL):
      svcutil.exe http://localhost:[端口]/CheckID.asmx?wsdl /out:CheckIDProxy.cs
      
    3. 将生成的CheckIDProxy.cs文件添加到客户端项目,手动配置绑定和端点,验证服务是否能正常调用。

内容的提问来源于stack exchange,提问作者Shalev Lavi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 18:32:10