Почему CreateInstanceFromAndUnwrap не работает в веб-контейнере? - PullRequest
2 голосов
/ 27 июля 2011

Привет, у меня есть код, который выглядит следующим образом:

 public static I Load<I>(string appDomainName, string fqDllName, string classType) where I : class
    {
      AppDomainSetup appDomainSetup = new AppDomainSetup();
      AppDomain appDomain = AppDomain.CreateDomain(appDomainName, null, appDomainSetup);

      I retVal = (I)appDomain .CreateInstanceFromAndUnwrap(fqDllName, classType);
      return retVal;
    }

В моем тестовом коде (т. Е. Не в веб-контейнере) он работает как брелок и загружает сборки без каких-либо жалоб. НО, затем я запускаю его в своем приложении (в веб-контейнере, II7 / или в контейнере разработчика VS2010), а затем он внезапно начинает жаловаться на:

"Тип не разрешен для члена '..., ..., Версия = 1.0.0.0, Культура = нейтральная, PublicKeyToken = ноль '. "}"

Я даже изменил свой тестовый пример, чтобы вызывать метод Load () с ТОЧНО такими же параметрами, как и у вызова приложения, и тестовый код (вне веб-контейнера) работает нормально, в то время как код приложения выдает вышеуказанную ошибку.

...