Как включить функцию переключения функций в.Net Core с помощью пакета функций переключения функций Nuget?
Ниже приведены изменения, которые я сделал в моем приложении. Добавлен пакет FeatureToggle в коде. И Создан Новый Класс Печати (Образец класса только для) Расширение SimpleFeatureToggle.
using FeatureToggle;
namespace AspDotNetCoreExample.Models
{
public class Printing : SimpleFeatureToggle {}
}
В appSettings.json добавлена функция KeyToggle Key, и она установлена в значение true. Таким образом, класс Printing будет читать его и включать функцию переключения.
{
"FeatureToggle": {
"Printing": "true"
}
}
** Startup.cs Зарегистрировал мою службу печати в методе ConfigureServices. Я передал файл конфигурации (appSettings.json) в класс Printing.
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
}
public IConfigurationRoot Configuration { get; }
public void ConfigureServices(IServiceCollection services)
{
// Set provider config so file is read from content root path
var provider = new AppSettingsProvider { Configuration = Configuration };
services.Configure<AppSettings(Configuration.GetSection("AppSettings"));
services.AddSingleton(new Printing { ToggleValueProvider = provider });
services.AddTransient<IMapper, Mapper>();
// Add framework services.
services.AddMvc();
}
// В Mapper Class, чтобы проверить, включен ли переключатель функции или нет, и включить функции.
namespace STAR.Marketing.Portal.Web
{
public class Mapper: Mapper
{
private readonly Printing _print;
public Mapper(Printing print) //Dependency Injection to get Printing
{
_print = print;
}
public string Enabled()
{
return _print.FeatureEnabled; // To check the feature is enabled but getting the Error System.FileIOException
}
}
}
Какие ошибки я сделал в приведенном выше коде? Почему я получаю эту ошибку в своем коде System.FileIOException.?
1 ответ
Я бы посоветовал вам сообщить об ошибке в следующий раз, когда вы пытаетесь получить помощь. Я предполагаю, что если вы только что создали проект, вполне вероятно, что файл appsetting.json не находится в папке bin. Вы можете проверить это или просто щелкнуть правой кнопкой мыши файл appsettings.json, выбрать свойства и изменить "Копировать в выходной каталог" на "Всегда копировать".