Внедрение зависимостей в .net 4.7? - PullRequest
0 голосов
/ 08 февраля 2019

Я немного запутался относительно того, какие встроенные опции у меня есть для DI.Я вижу, что это довольно просто для ядра .net (для моих конкретных проектов), но мне не нужно создавать кроссплатформенное приложение и не вижу преимущества использования ядра.Тем не менее, не похоже, что приложения .net Framework все еще настроены с Global.asax и без Startup.cs, значит ли это, что в .net Framework 4.7 нет встроенной опции DI?Мне все еще нужно получить стороннее решение или есть способ использовать тот же рабочий процесс DI в проекте .NET Framework, который используется в основном проекте?

Ответы [ 2 ]

0 голосов
/ 08 февраля 2019

РЕДАКТИРОВАТЬ: Несмотря на то, что я узнал, как это сделать, как объяснено ниже, я все же в конечном итоге пошел с Autofac, потому что я не понимал, что решение Microsoft поддерживает только внедрение конструктора, но не внедрение свойства.

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

https://scottdorman.github.io/2016/03/17/integrating-asp.net-core-dependency-injection-in-mvc-4/

Также обратите внимание, что если вы уже не используете Owin, это не требуется.Вы можете установить его точно так же в методе Application_Start в Global.asax.Единственное изменение, которое вам нужно будет сделать, это когда он ссылается на класс Startup в выражении, которое рефлексивно получает все классы Controller, вам нужно будет изменить его на класс, в котором находится код (или любой другой класс в вашей сборке).

0 голосов
/ 08 февраля 2019

Внедрение зависимостей по умолчанию не интегрировано в классический asp.net, вам нужно добавить пакет nuget для обработки DI (по умолчанию интегрируется только в ядро ​​asp.net).

...