Aller au contenu principal

23-5 Configurations de base

Finalement, pour que le projet d'API soit fonctionnel et puisse communiquer avec la base de données, quelques configurations de base s'imposent au niveau de la chaine de connexion, des migrations et de Dapper.

Connection String

Pour la configuration de base, on ajoutera au projet Api la chaine de connexion permettant d'accéder à la base de données. Le projet d'Api, lorsqu'il roule, doit en effet faire des appels à la base de données.

Ainsi, tout comme dans Mvc, ajoutez vos infos de connexion à appsettings.Development.json.

Snowfall.Web.Api/appsettings.Development.json
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"ConnectionStrings": {
"AppDatabaseConnection" : "Server=localhost;Database=snowfall;User Id=postgres;Password=admin;Include Error Detail=true;"
}
}

Migrations et config Dapper

Finalement, on peut ajouter le support pour les migrations dans le projet d'API. Ainsi, en démarrant le projet, s'il y a des migrations à exécuter, elles s'exécuteront.

On peut aussi en profiter pour ajouter la configuration Dapper faisant l'association entre les noms de colonne snake_case et PascalCase.

Snowfall.Web.Api/Program.cs
//...

// Injection de dépendances
builder.Services.EnregistrerServices();

builder.Services.AddMigrations(builder.Configuration.GetConnectionString("AppDatabaseConnection")!);

// Dapper match underscores: nom_propriete_underscore <-> NomProprieteUnderscore
Dapper.DefaultTypeMap.MatchNamesWithUnderscores = true;

var app = builder.Build();

//app.Services.MigrateDown();
app.Services.MigrateUp();

//...

Imgur