C#
Добавим код в файл Program.cs
using Npgsql;
using System;
using System.Threading.Tasks;
namespace ConsoleApp1
{
static class UtilsPostgres
{
public static NpgsqlConnection Connect(string connectionString)
{
NpgsqlConnection conn = new NpgsqlConnection(connectionString);
try
{
conn.Open();
}
catch (Exception e)
{
throw new Exception("Error connecting to the database", e);
}
return conn;
}
public static async Task ExecuteSelectAsReader(NpgsqlConnection conn, string sql, Action<NpgsqlDataReader> callback)
{
using (var command = conn.CreateCommand())
{
command.CommandText = sql;
using (var reader = await command.ExecuteReaderAsync())
{
callback(reader);
}
}
}
}
class Program
{
static async Task Main(string[] args)
{
// connect to server PostgreSQL
string connectionString = "Server=localhost; Port=5432; Database=postgres; UserId=postgres; Password=evgen12345; commandTimeout=120;";
var conn = UtilsPostgres.Connect(connectionString);
// getting data
string sql = "SELECT id, name FROM city";
await UtilsPostgres.ExecuteSelectAsReader(conn, sql, reader => {
while (reader.Read())
{
var id = reader.GetInt32(0);
var name = reader.GetString(1);
Console.WriteLine($"{id} {name}");
}
});
Console.ReadLine();
}
}
}
string connectionString = "Server=localhost; Port=5432; Database=postgres; UserId=postgres; Password=evgen12345; commandTimeout=120;";