2015-06-17 4 views
3

Я пытаюсь создать мое первое веб-приложение ASP.NET vNext, и проблема, с которой я столкнулся, заключается в том, что я не могу получить IOptions<AppSettings>, введенный в мой метод Startup.Configure(). Странно то, что сайт образца MVC, который был сгенерирован VS2015, выполняет те же самые шаги, но те же инъекционные работы! Оба проекта запускаются на настольной CLR и используют двоичные файлы 1.0.0-beta4. Я создал gist с файлами моего проекта. Я буду признателен за любые рекомендации или помощь в этом.Получить инъекции IOptions <AppSettings>

ответ

6

В вашем методе ConfigureServices, попробуйте добавить следующее:

services.AddOptions()

Это регистрирует OptionsManager<>, который используется для работы с сервисами типа IOptions<>.

+0

Добавление метода 'services.AddOptions()' to ConfigureServices() помогло решить эту проблему. Однако я не совсем понимаю, почему это работает в проекте VS2015 без добавления этой строки. –

+1

На самом деле я нашел ответ. В образце проекта VS2015 'services.AddMvc()' фактически вызывает 'services.AddOptions()'. –

+0

Да, точно ... –

Смежные вопросы