Загрузка данных


static async Task ReadAuthorsWithCancellationAsync(TimeSpan timeout)
{
    string connectionString = @"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=Library;Integrated Security=True;";
    string sql = "SELECT Id, FirstName, LastName FROM Authors";

    using (var cts = new CancellationTokenSource(timeout))
    {
        try
        {
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                await conn.OpenAsync(cts.Token);

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                using (SqlDataReader reader = await cmd.ExecuteReaderAsync(cts.Token))
                {
                    while (await reader.ReadAsync(cts.Token))
                    {
                        int id = reader.GetInt32(0);
                        string firstName = reader.GetString(1);
                        string lastName = reader.GetString(2);
                        Console.WriteLine($"{id}.