2012-05-22 5 views
1

Я застрял в этом исключении уже два дня. Я использую MS CRM 2011, и получил это исключение, когда я пытаюсь зарегистрировать сборку CRM, выполненную на основе work work 1. через средство pluginregistrator, 2. или когда я развертываю проект плагина, хотя пакет, в Visual Studio, и после запуска рабочий процесс, и он останавливается с ожидающим статусом, на странице сведений, дающей этот пример. Вот подробное исключение:System.IO.FileNotFoundException: Не удалось загрузить файл или сборку «Microsoft.Xrm.Client

Workflow paused due to error: Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Xrm.Client, Version=5.0.9688.1154, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified. at ArmenianSoftware.Crm.Spayka.ArmsoftIntegration.Workflows.CreateWorksByPlan.Execute(CodeActivityContext executionContext) at System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager) at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)

Я регистрации сборки в файловой системе, я загрузил все необходимые сборки в папке% Корневая система% \ C $ \ Program Files \ Microsoft Dynamics CRM \ Server \ Bin \ сборка. Этот рабочий процесс работал некоторое время, но после того, как я не знаю, что, в следующий раз, когда я развернул сборку, я получил это исключение при выполнении рабочего процесса. Это уже третий раз, когда я сталкиваюсь с этой проблемой и испортив несколько часов, пытаясь сделать разные вещи (IIS reset, Async Service перезагружается, перезагружает все сборки и повторно развертывает), и через несколько часов, загадочным способом, рабочий процесс начинает работать. После этого работает некоторое время, и после некоторого перераспределения снова сработает. И я не могу определить, после каких именно шагов я решаю проблему, и поэтому я трачу всегда несколько часов на выяснение источника исключения, но не имеет никакой цели. Я просмотрел некоторые темы в сети, но ни один из них не был моим делом (вот они thread1, thread2, thread3) Неужели кто-нибудь сталкивался с этой проблемой? В чем причина этого исключения? Спасибо заранее!

+1

Я уже нашел эту проблему, но я не могу ответить на мой вопрос в течение 8 часов (из-за низкого рейтинга), я напишу подробное описание в завтрашнем дне! – kyurkchyan

ответ

4

Я нашел проблему в моем случае!

Первое, что я заметил, было то, что в Exception требуемая версия сборки Microsoft.Xrm.Client была 5.0.9688.1154, но в моем проекте у меня есть ссылка на сборку версии 5.0.9689.1985.

enter image description here

И следующая вещь была открыта инструмент ILDASM, и посмотрите, что ссылки у него есть, я открыл свой собственный узел рабочего процесса, и я обнаружил, что у меня есть две ссылки на Microsoft.Xrm.Client, первой версии 5.0.9688.1154, а второй: 5.0.9689.1985 enter image description here

и встал вопрос: «Если я сослался на сборке версия Wich является 5.0.9689.1985, почему есть другая версия этой сборки? ». И ответ был определенно, что у меня была другая ссылка на сборку, в которой упоминалась сборка Microsoft.Xrm.Client с версией 5.0.9688.1154. Я просмотрел собрания, о которых я упоминал в своем проекте. И ГОТХА! В моем проекте я обновил SDK asseblies до более новой версии, но у меня также была создана сборка прокси-классов организации CRM, которая ссылается на Microsoft.Xrm.Client, и я не обновил эту ссылку на более новую версию CRM SDK. Поэтому моя сборка рабочего процесса также нуждалась в этой версии. Я изменил ссылки на прокси dll на более новую версию, и все прошло хорошо! Если вы читаете это сообщение и у вас нет прокси-сборки, проверьте свои другие сборки, если все они ссылаются на ту же версию CRM SDK, если не исправить их!

С уважением

Гагик Кюркчян

+1

Вы должны отметить это как ответ, затем ... – Daryl

Смежные вопросы