Плагины:
* **PluginA:**
* **TestConfig:** «Hello World».
Расширение PluginA для реализации конфигурации:
public class PluginOptions
{
public string TestConfig { get; set; }
}
[Plugin(Alias = "PluginA", Description = "Тестовый плагин")]
public class Plugin : SupportConfigPluginBase<PluginOptions>, ISupportInitPlugin
{
public Plugin(IOptionsMonitor<PluginOptions> options) : base(options)
{
}
public void Init(IPluginInitContext context)
{
// 注入 сервиса
//context.ServiceCollection.TryAddScoped<ICustomerService>();
Console.WriteLine($"Init 插件 конфигурации: {Options.TestConfig}");
}
public override Task StartAsync(IPluginContext context)
{
Console.WriteLine("Плагин A запущен");
Console.WriteLine($"StartAsync 插件 конфигурации: {Options.TestConfig}");
return base.StartAsync(context);
}
public override Task StopAsync(IPluginContext context)
{
Console.WriteLine("Плагин A остановлен");
return base.StopAsync(context);
}
}
Обратите внимание: в методе инициализации плагина также можно использовать внедренную конфигурацию. 3. Межплагинная конфигурация:
Некоторые конфигурации могут потребоваться нескольким плагинам. В этом случае вы можете объединить их в узле _Share под Plugins. Доступ к этой конфигурации можно получить через PluginOptions.
{
"Plugins": {
"PluginA": {},
"_Share": {
"TestConfig": "Hello World"
}
}
}
Чтобы ASP.NET Core мог получить доступ к контроллерам плагина, достаточно добавить программную сборку плагина в MVC в методе инициализации плагина Init:
context.ServiceCollection.AddMvcCore()
.AddApplicationPart(typeof(Plugin).Assembly);
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )