Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"version": 1,
"isRoot": true,
"tools": {
"dotnet-ef": {
"version": "9.0.8",
"commands": [
"dotnet-ef"
],
"rollForward": false
}
}
}
35 changes: 18 additions & 17 deletions Api/Infraestrutura/Db/DbContexto.cs
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Design;
using MinimalApi.Dominio.Entidades;

namespace MinimalApi.Infraestrutura.Db;

public class DbContexto : DbContext
{
private readonly IConfiguration _configuracaoAppSettings;
public DbContexto(IConfiguration configuracaoAppSettings)
{
_configuracaoAppSettings = configuracaoAppSettings;
}
public DbContexto(DbContextOptions<DbContexto> options) : base(options) {}

public DbSet<Administrador> Administradores { get; set; } = default!;
public DbSet<Veiculo> Veiculos { get; set; } = default!;
Expand All @@ -25,19 +22,23 @@ protected override void OnModelCreating(ModelBuilder modelBuilder)
}
);
}
}

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
public class DbContextoFactory : IDesignTimeDbContextFactory<DbContexto>
{
public DbContexto CreateDbContext(string[] args)
{
if(!optionsBuilder.IsConfigured)
{
var stringConexao = _configuracaoAppSettings.GetConnectionString("MySql")?.ToString();
if(!string.IsNullOrEmpty(stringConexao))
{
optionsBuilder.UseMySql(
stringConexao,
ServerVersion.AutoDetect(stringConexao)
);
}
}
var optionsBuilder = new DbContextOptionsBuilder<DbContexto>();

// Lê o appsettings.json para obter a string de conexão em tempo de design
IConfigurationRoot configuration = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json")
.Build();

var connectionString = configuration.GetConnectionString("MySql");
optionsBuilder.UseSqlite(connectionString);

return new DbContexto(optionsBuilder.Options);
}
}
52 changes: 0 additions & 52 deletions Api/Migrations/20231114235912_AdministradorMigration.Designer.cs

This file was deleted.

44 changes: 0 additions & 44 deletions Api/Migrations/20231114235912_AdministradorMigration.cs

This file was deleted.

61 changes: 0 additions & 61 deletions Api/Migrations/20231115013756_SeedAdministrador.Designer.cs

This file was deleted.

28 changes: 0 additions & 28 deletions Api/Migrations/20231115013756_SeedAdministrador.cs

This file was deleted.

40 changes: 0 additions & 40 deletions Api/Migrations/20231115020944_VeiculosMigration.cs

This file was deleted.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading