using System; using System.Data; using System.Threading; using System.Threading.Tasks; using Telegram.Bot; using Telegram.Bot.Types; using Telegram.Bot.Types.Enums; using Dapper; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Npgsql; using UserOfTheDayBot.Data; using UserOfTheDayBot.Services; public class Program { public static async Task Main(string[] args) { var host = Host.CreateDefaultBuilder(args) .ConfigureAppConfiguration((context, config) => { config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); config.AddEnvironmentVariables(); // Добавление переменных среды }) .ConfigureServices((context, services) => { services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); // TelegramBotClient зависит от IConfiguration для получения токена services.AddSingleton(provider => { var configuration = provider.GetRequiredService(); var botToken = configuration["BotSettings:BotToken"]; return new TelegramBotClient(botToken); }); }) .Build(); } }