Как я могу получить доступ к контактам Outlook 2013 в определенной папке из внешнего приложения с помощью C#?

Мне нужно импортировать 3 разные папки контактов Outlook 2013 в Dynamics CRM Online для одного из наших клиентов. Я не могу использовать соединитель CRM Online Outlook, потому что учетная запись CRM, с которой мне нужно их импортировать, не совпадает с учетными данными AD машины, с которой мне нужно их импортировать. Я также хочу избежать каких-либо побочных эффектов от

Я не могу экспортировать данные в файл.csv и импортировать их в CRM Online, потому что после экспорта данные довольно искажены, с избыточными переносами строк, иногда несколькими в одном поле. Поэтому мне нужно использовать для этого внешнее приложение, которое должно получить правильные контакты в Outlook, проанализировать их в контактах CRM, а затем вставить их.

У меня есть 5 папок контактов на вкладке контактов Outlook 2013, но только 3 из них являются клиентскими. остальные не могут быть импортированы ни при каких обстоятельствах. Как я могу извлечь ТОЛЬКО эти 3 папки из моей вкладки контактов, оставляя остальные, где они находятся?

1 ответ

Решение

Вам нужно написать код, чтобы получить контакты Outlook. Вы можете сделать это в C# с помощью библиотек Outlook Interop. Учитывая, что это одноразовая задача, я полагаю, я бы просто использовал консольное приложение. Если у вас нет опыта работы с библиотекой Outlook Interop, вам, вероятно, понадобится выполнить работу методом проб и ошибок. Я обычно нахожу это так, когда пишу против библиотек Office.

Примеры можно найти по адресу:

В частности, о контактах: получение контактов Outlook в приложение на основе форм C#

Не конкретно о контактах, но в сочетании с приведенным выше ответом вы должны начать с начала: могу ли я прочитать PST-файл Outlook (2003/2007) в C#?

Информация о добавлении основной сборки взаимодействия Office, которая вам понадобится: http://msdn.microsoft.com/en-us/library/15s06t57.aspx

Другие вопросы по тегам