UPS API .Net 添加网络引用

7
在这里使用API包:https://www.ups.com/gec/techdocs/pdf/Rates_Pkg_Gnd.zip 添加到RateWS.wsdl的引用方式如下:
- 右键单击网站项目 -> 添加服务引用
- 在地址栏中输入:file://C:\Users\MyUser\Desktop\UPS API\RatingPACKAGE\PACKAGEWebServices\SCHEMA-WSDLs\RateWS.wsdl
Visual Studio会添加几个参考文件: enter image description here 使用提供的API包中的示例代码,将测试代码复制到我的项目中。
问题:未定义“RateService”类。是否缺少引用? enter image description here 看起来网址引用没有正确添加。RateService类是未知的。谢谢你的帮助。

或者样例代码不正确或已过时。 - stuartd
1
有没有比UPS提供的更好的资源? .NET API似乎不起作用,或者至少他们提供的示例不起作用。 - Tomas Beblar
@TomasBeblar 我也有同样的问题。你解决了吗? - iamraviraj
@Ranger 不是,我最终使用了 EasyPost API。不是免费的,但还行。 https://www.easypost.com/ - Tomas Beblar
2个回答

4

我认为问题在于你试图添加一个服务引用而不是Web引用

如何向项目添加Web引用 在“解决方案资源管理器”中,右键单击要添加服务的项目名称,然后单击“添加服务引用”。 出现“添加服务引用”对话框。 在“添加服务引用”对话框中,单击“高级”按钮。 出现“服务引用设置”对话框。 在“服务引用设置”对话框中,单击“添加Web引用”。 出现“添加Web引用”对话框。 在URL框中,输入要使用的Web服务的URL。如果您不知道URL,请使用浏览窗格中的链接查找所需的Web服务。


3
UPS文档经常与代码示例不同步。您应该修改您的代码如下所示:
FreightRatePortTypeClient Client = new FreightRatePortTypeClient();

....
....

FreightRateResponse resp = Client.ProcessFreightRate(upss, <your freight rate request object>);

这对我有用!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接