Не удалось загрузить файл или сборку "Google.Apis

Привет, с наступающим или уже наступившим.

Есть следующая ошибка:

System.IO.FileLoadException: Не удалось загрузить файл или сборку "Google.Apis, Version=1.49.0.0, Culture=neutral, PublicKeyToken=4b01fa6e34db77ab" либо одну из их зависимостей. Найденное определение манифеста сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040)
Имя файла: 'Google.Apis, Version=1.49.0.0, Culture=neutral, PublicKeyToken=4b01fa6e34db77ab' ---> System.IO.FileLoadException: Найденное определение манифеста сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040)

Ситуация:
Есть задача поиграться с GoogleSheets API со стороны Creatio, для этого нужно установить соответствующие библиотеки. 
Сначала я создал консольный проект в VS и через nuget поставил либы Google.Apis.Sheets.v4 - https://www.nuget.org/packages/Google.Apis.Sheets.v4/
Подтянулись либы GoogleSheets и зависимые тоже, в том числе Google.Apis v 1.49.0.0. Протестировав на консольном проекте, где все работало, я решил поставить эти же либы в Creatio, прикрепив их как сборки к пакету.
После компиляции приложения вылезло предупреждение что уже существует либа Google.Apis, только другая - "Google.Apis, Version=1.1.4547.22925, Culture=neutral, PublicKeyToken=edaadfbc3b0bb879" как я понимаю на ней работает синхронизация календаря и ещё что то там и возможны конфликты, но предупреждение это не ошибка, по этому я пошел дальше и использовал классы новой либы версии 1.49, и тут же получил  ошибку которую написал выше.

На счет зависимостей странность:
Я скачал сборку старую Google.Apis что бы пощупать и сразу увидел зависимость от либы "Newtonsoft.Json 4.0.4.0" хотя в системе Creatio эта же либа работает в версии 12.0.0.0. Как в системе могут присутствовать сборки которые используют в одно и то же время разные версии сборки?

Возможные решения: 
1. Переписать календарь и другой функционал под новую версию либы, удалив старую, но потом обнова и gg.
2. Попробовать сделать отдельный сервис где то "во вне" и поставить туда нужные мне либы и заделать этот сервис как посредник между гуглом и Creatio.
3. Подскажите свое, что я упускаю?

Нравится

2 комментария
Лучший ответ

Здравствуйте! Данную проблема присутствует уже очень долго. В моем случае это была проблема интеграции Creatio с  Google Analytics. И как следствие пришлось делать внешний сервис + подключил туда Rabbit для обмена данными. 

Добрый день.

Благодарю вас за то, что подметили данную проблему.

 

Так сразу мы не сможем решить данный вопрос, но по идее, вы можете завязаться на либу, без указания версии, дабы не требовать конкретную версию.

Мы со своей стороны займемся обновлением этой либы, но это будет не скоро.

Также могу порекомендовать вам реализовать ваш вариант №2.

Здравствуйте! Данную проблема присутствует уже очень долго. В моем случае это была проблема интеграции Creatio с  Google Analytics. И как следствие пришлось делать внешний сервис + подключил туда Rabbit для обмена данными. 

Показать все комментарии