Я пытаюсь использовать .CreateInstance()
в утилите подключения в проекте С# при сериализации XML. .Unwrap()
используется для развертывания сериализуемого возвращаемого типа и получения экземпляра типа, который я пытаюсь создать.
String fileToLoad = @"D:\RPMOpen\svnCobra\conversion\aui\Model\bin\Debug\RPM_Model";
String file = Path.GetFileName(fileToLoad);
AbstractResponseMessageData response =
(AbstractResponseMessageData)Activator.CreateInstance(file, responseName).Unwrap();
У меня сборка RPM_Model
на @"D:\RPMOpen\svnCobra\conversion\aui\Model\bin\Debug\RPM_Model"
загружается нормально, но в результате типа ARC_LOGONRS
на responseName
получаю следующую ошибку:
Ошибка в методе ConnectUtil.Execute: не удалось загрузить тип
ARC_LOGONRS
из сборкиRPM_Model, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
.
Вот почему я застрял на ошибке:
1. я сделал ссылку на сборку, указанную в ошибке.
2. В моем GAC нет ничего, переопределяющего .dll в моей папке /Debug
.
3. Я убедился, что у меня правильная версия .dll.
4. .dll не имеет других зависимостей.
5. И мой проект, и DLL имеют одну и ту же целевую платформу.
6. Я знаю, что ссылаюсь на сборку правильно, как если бы я поместил ARCLOGON_RS
в свой код и навел на нее курсор, я вижу
класс RPM.Model.Data.ARCLOGON_RS
и я могу f12
сфокусироваться на нем, чтобы увидеть его свойства.
7. Я очистил и перестроил оба решения.
8. Тип имеет общедоступный конструктор по умолчанию, и класс является общедоступным.
9. .dll находится в опорном узле.
10. У меня есть правильное имя сборки, переданное в качестве параметра.
Мой вопрос: есть ли у кого-нибудь другое мнение о том, почему мой проект может выдавать эту ошибку и как я могу ее исправить, поскольку у меня полностью закончились диагностики.
Большое спасибо за любую помощь.
AbstractResponseMessageData
. Из этих трех я бы подумал, что это должно быть EntryPointNotFound, но я понятия не имею, как дальше диагностировать исключение. - person HavelTheGreat   schedule 24.02.2015Dll
находится в ссылочном узле.. также проверьте, установлен лиCopyLocal=true
.. || stackoverflow.com/questions/7598088/ а> - person MethodMan   schedule 24.02.2015Activator.CreateInstance(Type.GetType("RPM.Model.Data.ARCLOGON_RS, RPM_Model", true))
? - person NightOwl888   schedule 24.02.2015RPM.Model.Data.ARCLOGON_RS
из сборкиRPM_Model
. - person HavelTheGreat   schedule 24.02.2015