ASP.net Core Controller добавлен или изменен позже во время выполнения - PullRequest
0 голосов
/ 23 октября 2018

У меня есть универсальный контроллер, который инициализируется для пользовательских типов при запуске.Я хотел бы реализовать функциональность для добавления, обновления и удаления этих контроллеров позже.(Все 5 минут на API-вызове ...) Как это возможно?Новые типы доставляются IExternalCompiler

public class ExternalControllerFeatureProvider : IApplicationFeatureProvider<ControllerFeature>
{
    private readonly IExternalCompiler _entityCompiler;

    public ExternalControllerFeatureProvider(IExternalCompiler entityCompiler)
    {
        _entityCompiler = entityCompiler;
    }

    public void PopulateFeature(IEnumerable<ApplicationPart> parts, ControllerFeature feature)
    {
        foreach (var candidate in _entityCompiler.GetTypes())
        {
            feature.Controllers.Add(
                typeof(GenericController<>).MakeGenericType(candidate).GetTypeInfo()
            );
        }
    }
}

Этот IApplicationFeatureProvider добавляется в Startup.Configure для ApplicationPartManager

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...