Доступ к API веб-сервиса Salesforce с помощью C#

StackOverflow https://stackoverflow.com/questions/1531678

  •  20-09-2019
  •  | 
  •  

Вопрос

Я раньше не работал с этим Salesforce API, поэтому немного зациклился на том, как подключиться к сервису Salesforce.

Пока я понял, что мне нужно сгенерировать wsdl-файл для моей учетной записи или, скорее, учетной записи моего клиента (шаг 1).Пока все идет так хорошо.

Но теперь Быстрый старт (http://www.salesforce.com/us/developer/docs/api/Content/sforce_api_quickstart_steps.htm) говорит что-то о "Импорте файла WSDL в вашу платформу разработки" (шаг 2).

Как мне импортировать файл wsdl в Visual Studio 2008?Я не могу найти опцию "Добавить веб-ссылку", которая упоминается в быстром запуске.

И если мне нужно использовать только WSDL, то для чего нужен пакет API Salesforce Dotnet, который можно загрузить с веб-сайта Salesforce (http://wiki.developerforce.com/index.php/Salesforce_Dotnet_API)?

Есть ли какие-либо подводные камни, на которые мне следует обратить внимание при разработке приложений, использующих salesforce API?

Это было полезно?

Решение

Если вы будете следовать указаниям в ответе Binz, вы сможете добавить ссылку на веб-службу с помощью Visual Studio.

"Пакет API Salesforce Dotnet API" на вики-сайте не требуется для доступа к SalesForce API, это просто библиотека, которая пытается абстрагировать его.

Что касается подводных камней и других вещей, которые следует знать, я бы рекомендовал вам прочитать главу 6 Force.com Кулинарная книга.Вы должны зарегистрироваться для создания учетной записи разработчика force.com (бесплатно).Большинство вещей, о которых вам нужно знать, описаны в этой главе.Вот некоторые из них:

  • вход в систему / выход из системы - сеанс управление
  • шаблон запроса / queryMore (необходим, если вы собираетесь извлекать большие наборы данных из SalesForce)
  • как создать класс-оболочку - есть несколько примеров vb.net кода, которые вы также можете скачать

Следует отметить еще одну вещь: если вы собираетесь использовать SOQL для запроса данных SalesForce и вам нужно выполнить фильтрацию по полю даты SalesForce, вам нужно будет отформатировать строку даты.Вот один из способов сделать это:

public static string FormatDateForQuery(DateTime dateToFormat, bool includeTime)
{
    if (includeTime)
    {
        return dateToFormat.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ss+00:00");
    }
    else
    {
        return dateToFormat.ToUniversalTime().ToString("yyyy-MM-dd");
    }
}

Другие советы

Для Visual Studio 2008 вам нужно выбрать "Добавить ссылку на службу", затем нажать кнопку "Дополнительно" в левом нижнем углу диалогового окна.Затем в нижней части этого диалога должна появиться кнопка с надписью "Добавить веб-ссылку".Затем вы должны иметь возможность выбрать свой wsdl-файл, и VS автоматически сгенерирует для вас прокси-сервер service client.

Чтобы создать файл WSDL, перейдите по ссылке (ваше имя вверху справа) "Настройка", "разработка" > "api" > "создать корпоративный wsdl" > "создать".В Chrome нажмите сохранить страницу как и поместите этот файл на диск c.В Visual Studio перейдите в раздел Добавить ссылку на службу > дополнительно > добавить веб-ссылку.Укажите на файл, который вы скачали:file:///c:/wsdl.jsp.xml

При использовании .NET 2.0 с полями даты и времени в Salesforce возникает проблема с синтаксическим анализом, доступ к которым осуществляется через веб-службы.

Похоже, это ошибка в .NET, но есть другой способ устранить ее, вручную отредактировав wsdl.

Более подробная информация здесь:

http://community .salesforce.com/t5/NET-Development/Can-t-update-date-datetime-from-c-webservice-through-enterprise/m-p/96046

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top