Как получить свойство LoaderException?



Я получаю сообщение об ошибке при обновлении моей ссылки на службу:



специальный инструмент предупреждение: не удается загрузить один или более запрошенных типов. Получения свойства LoaderExceptions для получения дополнительной информации.



Как я могу получить свойство LoaderException?



обновление: мои ошибки исчезли, когда я повторно импортировал проекты объектов домена. Я понятия не имею, почему это исправило проблему, но я рад, что это работает.

721   4  

4 ответов:

try
{
  // load the assembly or type
}
catch (Exception ex)
{
  if (ex is System.Reflection.ReflectionTypeLoadException)
  {
    var typeLoadException = ex as ReflectionTypeLoadException;
    var loaderExceptions  = typeLoadException.LoaderExceptions;
  }
}
catch (ReflectionTypeLoadException ex)
{        
    foreach (var item in ex.LoaderExceptions)
    {
          MessageBox.Show(item.Message);                    
    }
}

Я сожалею о воскрешении старого потока, но хотел опубликовать другое решение, чтобы вытащить исключение загрузчика (используя фактическое исключение ReflectionTypeLoadException) для кого-либо еще, чтобы столкнуться с этим.

еще одна альтернатива для тех, кто зондирует вокруг и / или в интерактивном режиме:

$Error[0].Исключение.LoaderExceptions

Примечание: [0] захватывает самую последнюю ошибку из стека

С помощью Quick Watch в Visual Studio вы можете получить доступ к LoaderExceptions из ViewDetails брошенного исключения следующим образом:

($exception).LoaderExceptions

Comments

    Ничего не найдено.