Program.cs 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using System.Reflection;
  2. using api_cs;
  3. using Dapper;
  4. using DbUp;
  5. using MySqlConnector;
  6. string? connectionString = Environment.GetEnvironmentVariable("CONNECTION_STRING");
  7. Console.WriteLine("connectionString (from ENV): {0}", connectionString);
  8. if (connectionString == null)
  9. connectionString = "Server=127.0.0.1; Port=3308; User ID=root; Password=toor; Database=mydb;";
  10. EnsureDatabase.For.MySqlDatabase(connectionString);
  11. var upgrader = DeployChanges.To
  12. .MySqlDatabase(connectionString)
  13. .WithScriptsEmbeddedInAssembly(Assembly.GetExecutingAssembly())
  14. .LogToConsole()
  15. .Build();
  16. var result = upgrader.PerformUpgrade();
  17. if (!result.Successful)
  18. {
  19. throw new Exception("Не смог сделать миграцию");
  20. }
  21. var builder = WebApplication.CreateBuilder(args);
  22. var app = builder.Build();
  23. app.MapGet("/genre", () =>
  24. {
  25. using (MySqlConnection db = new MySqlConnection(connectionString))
  26. {
  27. return db.Query<Genre>(
  28. "SELECT * FROM Genre");
  29. }
  30. });
  31. app.Run();