.net - '序列化正文时出错'。通过 .NET 3.5 调用 Fedex Web 服务时出现问题

标签 .net web-services

我正在使用 Fedex 的网络服务,并在我真正到达任何地方之前就遇到了一个恼人的错误。

序列化消息 addressValidationRequest1 的正文时出错:'无法生成临时类(结果 = 1)。
错误 CS0030:无法将类型“FedEx.InterOp.AddressValidationServiceReference.ParsedElement[]”转换为“FedEx.InterOp.AddressValidationServiceReference.ParsedElement”
错误 CS0029:无法将类型“FedEx.InterOp.AddressValidationServiceReference.ParsedElement”隐式转换为“FedEx.InterOp.AddressValidationServiceReference.ParsedElement[]”
'。有关更多详细信息,请参阅 InnerException。

我正在使用 .NET 3.5 并为我生成了一个可怕的命名类(我不确定为什么它不仅仅是 AddressValidationService):
AddressValidationPortTypeClient addressValidationService = new ...;
在这门课上,我进行了网络服务调用:
addressValidationService.addressValidation(request);
这是我收到此错误的时候。

我能找到的这个错误的唯一引用来自古老的 1.1 项目。就我而言,我的 DLL 引用了 System.Web 和 System.Web.Services,这在当时似乎是一个问题。

最佳答案

您只需要更改 [][],而不是单个 []。

在 Reference.cs 更改

private ParsedElement[][] parsedStreetLineField;
to
private ParsedElement[] parsedStreetLineField;
and
public ParsedElement[][] ParsedStreetLine {
to
public ParsedElement[] ParsedStreetLine {

关于.net - '序列化正文时出错'。通过 .NET 3.5 调用 Fedex Web 服务时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/345411/

相关文章:

c# - .net maui blazor - 显示 Android 内部存储中的图像

c# - 功能 'using declarations' 在 C# 7.3 中不可用。请使用语言版本 8.0 或更高版本 - 在一台计算机上出错,但在另一台计算机上正常

java - 带有 OSGI 和 Karaf 的 CXF 网络服务

Android loopj asynchttpclient 返回响应

java - Web服务,WSDL地址中的动态地址

java - 发送 HTTP 请求抛出 JAVA 时出现 405 错误

c# - 如何在 .NET 3.5 中进行动态对象创建和方法调用

c# - 系统.Linq.表达式 : Binding LambdaExpression inputs at runtime

.net - 如何在 startup.cs 中运行/触发服务?

java - 请求的资源上不存在 'Access-Control-Allow-Origin' header 。因此不允许访问 Origin 'xxx'