Доступ к зарегистрированному объекту в классе Nancy Startup

Я пишу сервис в Нэнси и использую некоторое промежуточное ПО для мониторинга сервиса:

    app.UseOwin(buildFunc => 
    { 
        var log = ConfigureLogger();
        buildFunc.UseMonitoringAndLogging(log, HealthCheck);
        buildFunc.UseNancy();
    });

Промежуточное программное обеспечение настроено на использование HealthCheck() функция, определенная в Startup Класс как:

    public async Task<bool> HealthCheck()
    {
        return await SomeRepo.HealthCheck();
    }

SomeRepo имеет HealthCheck() метод, который запрашивает базу данных, чтобы подтвердить, что она доступна / отвечает. Но как вводить SomeRepo в Startup класс или, альтернативно, получить доступ к контейнеру для разрешения SomeRepo?

1 ответ

На данный момент вы все еще находитесь в Оуэне, а не в конвейере Нэнси. На каком хосте вы работаете? Если вы используете aspnetcore вы можете зарегистрировать свои депо в RegisterServices() метод, и он будет обрабатывать инъекцию в ваш метод. Ты можешь использовать Autofac или же StructureMap так что вы можете поделиться своим контейнером с Нэнси, как это.

Другие вопросы по тегам