Инъекция зависимостей / конструкторов DI / CI, как узнать, какие объекты доступны? - PullRequest
0 голосов
/ 02 марта 2019

При написании кода (C #, Visual Studio 2019), есть ли какой-нибудь способ узнать, какие в настоящее время доступны варианты внедрения для вашего конструктора?Intellisense, кажется, не может помочь, я обычно сталкиваюсь с примерами, чтобы выяснить, что я могу просить, но должен быть лучший способ увидеть, какие объекты предоставляются?

1 Ответ

0 голосов
/ 02 марта 2019

Существует множество реализаций DI, и я думаю, что некоторые из них пытались улучшить ситуацию в этой области, но в общем случае нет способа сделать это.

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

Постарайтесь как можно ближе познакомиться с составным корнем вашего приложения и свободно использовать отладчик, чтобы выяснить, как все устроено во время выполнения.

...