hn-dotnet : un clone d'Hacker News en dotnet !
Démarche
On crée un fichier solution avec dotnet new sln.
Commençons par le commencement, les building blocks, des classes pour nous faciliter la vie !
$ mkdir BuildingBlocks
$ cd BuildingBlocks
$ dotnet new classlib && dotnet new gitignore
Ensuite viens le domaine :
$ mkdir Domain
$ cd Domain
$ dotnet new classlib && dotnet new gitignore
On crée ensuite les différentes classes nécessaires au fonctionnement de l'application...
Ensuite viens la couche applicative avec nos commands et nos queries pour un couplage faible.
$ mkdir Application
$ cd Application
$ dotnet new classlib && dotnet new gitignore
On ajoute aussi le package MediatR avec dotnet add package MediatR et la référence au domaine avec dotnet add reference ../Domain.
Création du répertoire et de la première appli razor pour exposer le domaine.
$ mkdir Apps
$ cd Apps
$ dotnet new mvc -o Website
$ cd Website
$ dotnet new gitignore
On peut aussi installer les outils de scaffolding avec dotnet tool install -g dotnet-aspnet-codegenerator...
On ajoute les extensions MediatR pour pouvoir facilement enregistrer les services dans le conteneur IoC d'ASP.Net Core avec dotnet add package MediatR.Extensions.Microsoft.DependencyInjection.
Pour la couche d'infrastructure, il nous faut implémenter notre ILinkRepository avec EF Core dans un nouveau projet Infrastructure.
$ dotnet new classlib -o Infrastructure
$ cd Infrastructure
$ dotnet new gitignore
$ dotnet add package Microsoft.EntityFrameworkCore.Sqlite
$ dotnet add package Microsoft.EntityFrameworkCore.Design
On installe les outils Entity framework dotnet tool install --global dotnet-ef.
Pour plus tard, pour la génération de doc :
project.csproj
true bin\YourApi.XML