/// <summary>
 /// Включает базовые сервисы и middleware
 /// Необходимо подключать сразу после конфигурирования авторизации
 /// </summary>
 /// <param name="companyHostBuilder"></param>
 /// <returns></returns>
 public static IViennaHostBuilder UseCallContext(this IViennaHostBuilder companyHostBuilder)
 {
     return(companyHostBuilder.ConfigureApp(ConfigureCallContextMiddleware)
            .RegisterServices(RegisterCallContextServices));
 }
 /// <summary>
 /// Добавляет действие при старте сервиса
 /// </summary>
 /// <typeparam name="T">Класс, содержащий действие</typeparam>
 /// <param name="companyHostBuilder"></param>
 /// <param name="action"></param>
 /// <returns></returns>
 public static IViennaHostBuilder AddOnStartAction <T>(this IViennaHostBuilder companyHostBuilder, Action <T> action) where T : class
 {
     companyHostBuilder.AddOnStartAction(container => GetAction(container, action));
     return(companyHostBuilder);
 }
 /// <summary>
 /// Добавляет NTLM-авторизацию
 /// </summary>
 /// <param name="companyHostBuilder"></param>
 public static IViennaHostBuilder UseNtlmAuth(this IViennaHostBuilder companyHostBuilder)
 {
     return(companyHostBuilder.ConfigureApp(UseAuthentication)
            .AddMvcBuilderConfiguration(ConfigureMvcBuilder)
            .RegisterServices(Register));
 }