WEB 服务 - UPS WSDL/C# 示例编译错误

本文关键字:编译 错误 服务 UPS WSDL WEB | 更新日期: 2023-09-27 17:57:03

我有一个 C# ASP.NET 我正在尝试添加 UPS 引用的网站。 我使用了示例中的代码并导入了包含的 WSDL,除 RateService 类外,所有对象都正确映射到 wsdl。

这是我正在使用的代码示例和 WSDL。

这是有错误的代码片段:

RateService rate = new RateService();
RateRequest rateRequest = new RateRequest();
UPSSecurity upss = new UPSSecurity();

编译错误是找不到RateService

我很确定 WSDL 正在导入,因为其余的类编译得很好。 自样品发布以来,UPS 是否更改了其 API? 有人有什么想法吗?

WEB 服务 - UPS WSDL/C# 示例编译错误

你的 WSDL 文件有这个块:

<wsdl:service name="RateService">
    <wsdl:port name="RatePort" binding="tns:RateBinding">
        <!-- Production URL -->
            <!-- <soap:address location="https://onlinetools.ups.com/webservices/Rate"/> -->
            <!-- CIE (Customer Integration Environment) URL -->
            <soap:address location="https://wwwcie.ups.com/webservices/Rate"/>
    </wsdl:port>
</wsdl:service>

看起来RateService是语义被定义的。您确定它正确导入了吗?

示例代码(在您的 zip 中)还显示了生成的 Web 引用 - 它有一个RateService类。

若要将此引用添加到项目,请转到 Add Service Reference ,在对话框的控件上选择"Advanced",然后选择第二个对话框底部的"Add Web Reference"。输入 WSDL 文件的 URL,然后添加引用。

请确保将正确的 using 语句添加到代码文件中,以使用 WSDL 中的类型。

(这适用于 VS 2008 和 VS 2010。