DatabaseManager.cs 960 B

12345678910111213141516171819202122232425262728293031323334353637
  1. using Npgsql;
  2. namespace LibraryManagementSystem.Console.Database;
  3. /// <summary>
  4. /// Управляет подключением к PostgreSQL.
  5. /// </summary>
  6. public class DatabaseManager
  7. {
  8. /// <summary>
  9. /// Создает подключение к БД.
  10. /// </summary>
  11. /// <returns>Открытое подключение PostgreSQL.</returns>
  12. /// <exception cref="Exception">
  13. /// Возникает при ошибке подключения.
  14. /// </exception>
  15. public NpgsqlConnection CreateConnection()
  16. {
  17. try
  18. {
  19. var connection =
  20. new NpgsqlConnection(
  21. DbConfig.CONNECTION_STRING
  22. );
  23. connection.Open();
  24. return connection;
  25. }
  26. catch (Exception ex)
  27. {
  28. throw new Exception(
  29. $"Ошибка подключения к PostgreSQL: {ex.Message}"
  30. );
  31. }
  32. }
  33. }