В c# определить интерфейсы, реализуемые объектом во время выполнения - PullRequest
0 голосов
/ 28 мая 2020

Я знаю, что есть способы определить во время выполнения, реализует ли объект конкретный интерфейс. Мне интересно, есть ли способ определить во время выполнения все интерфейсы, реализуемые объектом, без поиска какого-либо одного интерфейса в частности.

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

Сейчас я изучаю рефлексию, но если есть менее ресурсоемкий способ сделать я бы предпочел это.

Есть идеи?

1 Ответ

3 голосов
/ 28 мая 2020

Type.GetInterfaces вернет вам типы интерфейсов, реализованных типом объекта. Например:

var interfaces = someObject.GetType().GetInterfaces();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...