Nano Hash - криптовалюты, майнинг, программирование

«Ошибка сериализации тела». Проблема с вызовом веб-службы Fedex через .NET 3.5

Я использую веб-службы Fedex и получаю раздражающую ошибку прямо перед тем, как я действительно могу куда-либо добраться.

Произошла ошибка при сериализации тела сообщения addressValidationRequest1: «Невозможно сгенерировать временный класс (результат = 1). ошибка CS0030: невозможно преобразовать тип «FedEx.InterOp.AddressValidationServiceReference.ParsedElement[]» в «FedEx.InterOp.AddressValidationServiceReference.ParsedElement». .ParsedElement[]' '. Пожалуйста, смотрите InnerException для более подробной информации.

Я использую .NET 3.5 и получаю ужасный именованный класс, сгенерированный для меня (я не уверен, почему это не просто AddressValidationService):

AddressValidationPortTypeClient addressValidationService = new ...;

в этом классе я вызываю свой веб-сервис:

addressValidationService.addressValidation(request);

Это когда я получаю эту ошибку.

Единственные упоминания об этой ошибке, которые я могу найти, относятся к древним проектам 1.1. В моем случае в моей DLL есть ссылки на System.Web и System.Web.Services, которые тогда казались проблемой.

05.12.2008

  • FWIW, также похоже, что это происходит с клиентом службы WCF... 14.03.2014

Ответы:


1

Вам нужно изменить только [][], а не один [].

В Reference.cs изменить

private ParsedElement[][] parsedStreetLineField;
to
private ParsedElement[] parsedStreetLineField;
and
public ParsedElement[][] ParsedStreetLine {
to
public ParsedElement[] ParsedStreetLine {
09.01.2009
  • людям все еще нужен этот ответ на самом деле! давай федекс! 08.04.2014
  • API ParcelForce имеет ту же проблему со свойствами ParcelContents, Address и ServiceCodes. 18.01.2015

  • 2

    Оказывается, собственная документация Fedex специально описывает это!

    Я использую wsdl.exe от Microsoft для создания кода и получаю сообщение об ошибке CS0029: невозможно неявно преобразовать тип 'fedexreq.ParsedElement' в 'fedexreq.ParsedElement[]'.

    Это ошибка, создаваемая средством языка описания веб-служб (Wsdl.exe) для создания информации о клиенте. При публикации схемы, содержащей вложенные узлы, для атрибута maxOccurs которых задано значение unbounded, средство Wsdl.exe создает многомерные массивы в сгенерированном файле кода. Поэтому сгенерированный код содержит неправильные типы для вложенных узлов. Чтобы решить эту проблему, измените сгенерированный код, удалив символы массива квадратных скобок ([]) из операторов удаления типа данных. Дополнительные сведения см. на странице http://support.microsoft.com/kb/326790/en-us и http://support.microsoft.com/kb/891386

    05.12.2008

    3

    Примечание. Чтобы получить доступ к файлу Reference.cs, на который ссылается Simon_Weaver, откройте проект в Visual Studio и в обозревателе решений щелкните веб-ссылку, а затем посмотрите на маленькие значки в верхней части обозревателя решений. Щелкните значок «Показать все файлы», чтобы отобразить скрытые файлы. Теперь разверните веб-ссылку, затем разверните внутри Reference.map, и, наконец, вы увидите Reference.cs, который вы можете отредактировать, заменив [][] на []

    Не путайте этот файл Reference.cs с файлом Reference.cs, который вы могли получить от Fedex при загрузке их примера кода.

    23.12.2011
  • Разве это не могло быть лучше, чем комментарий к ответу, на который вы ссылались? 03.06.2013
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..