Сегодня (11 ноября 2016 г.) я загрузил новую версию Visual Studio 2017 RC, установил .Net Core 1.1 и настроил проект Web Api (веб-приложение ASP.NET Core (.NET Core)). Затем я выполнил инструкции как прочтите настройки приложения из файла конфигурации. Это сработало нормально.
Затем я создал новый проект в том же решении. Это была библиотека классов (.NET Standard) в разделе .NET Core. Я добавил класс с интерфейсом и настроил его с внедрением зависимостей по умолчанию.
Наконец, я попытался использовать конфигурацию в библиотеке классов с помощью внедрения конструктора. Я получаю это сообщение об ошибке:
Не удалось найти тип или имя пространства имен 'IOptions ‹>'
Вот мой класс в библиотеке классов:
public class Firebase : IDatabase
{
public Firebase(IOptions<AppSettings> appSettings)
{
//string basePath =
}
}
Вот метод ConfigureServices в Startup.cs:
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
services.AddTransient<IDatabase, Firebase>();
// Set up configuration files.
services.AddOptions();
services.Configure<AppSettings>(options => Configuration.GetSection("AppSettings").Bind(options));
}
Я пытался добавить
using Microsoft.Extensions.Options;
чтобы он скомпилировался, но лампочка говорит мне, что это ненужная ссылка.
Что мне не хватает? Это невозможно? Есть ли специальная библиотека классов для .NET Core?