Выкинуть исключение без ссылки на его узел сборки? - PullRequest
0 голосов
/ 22 января 2011

У меня есть сборка, которая является плагином для системы A (она реализует интерфейс IASystemPlugin). Система A является компонентом системы B. Я хочу выбросить исключение из плагина на уровень System B. К сожалению, обе системы A и B обрабатывают все известные исключения и перебрасывают все неизвестные, поэтому я должен выбросить экземпляр B.SystemBException.

Как клиент системы A, у меня не было ссылок на классы B, и лучше, если я не буду (все ссылки, кроме системных, должны быть зарегистрированы на уровне A, это означает, что нужно зарегистрировать более 30 сборок B). В этом случае я могу создать очень простой класс B.SystemBException?

Будут оценены любые методы взлома.

С уважением,

1 Ответ

1 голос
/ 22 января 2011

Полагаю, вы сможете найти класс с помощью Reflection и создать его экземпляр. Но вы уверены, что хотите это сделать? Я предполагаю, что системные интерфейсы были созданы для размещения такого контента?

В любом случае, я предполагаю, что у вас есть доступ к этому классу, поскольку вы загружаетесь другой сборкой. Посмотрите это для начала: http://www.codeproject.com/KB/dotnet/Reflection.aspx

Дайте мне знать, если вам нужно больше деталей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...