Add initial project structure and implement basic functionality

- Created MSTestSettings.cs to enable parallel test execution.
- Added StyleTests.cs and TitreTests.cs for unit testing of Style and Titre entities.
- Implemented Webzine.Entity.Tests project with necessary configurations.
- Created SeedDataLocal.cs and SeedDataSpotify.cs for local and Spotify data seeding.
- Established repository contracts for Artiste, Commentaire, Style, and Titre.
- Developed DbEntityRepository and LocalEntityRepository classes.
- Set up Webzine.WebApplication with controllers, logging, and Docker support.
- Configured NLog for logging and added necessary appsettings for development.
- Created initial views and layout for the web application.
- Added Dockerfile and docker-compose configuration for containerization.
This commit is contained in:
mirage
2026-03-03 16:22:37 +01:00
commit 86a87f75ce
44 changed files with 1185 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
// using Webzine.Entity;
namespace Webzine.Repository.Contracts
{
public interface IArtisteRepository
{
// void Add(Artiste artiste);
// void Delete(Artiste artiste);
// Artiste Find(int id);
// IEnumerable<Artiste> FindAll();
// void Update(Artiste artiste);
}
}

View File

@@ -0,0 +1,15 @@
// using Webzine.Entity;
namespace Webzine.Repository.Contracts
{
public interface ICommentaireRepository
{
// void Add(Commentaire commentaire);
// void Delete(Commentaire commentaire);
// Commentaire Find(int id);
// IEnumerable<Commentaire> FindAll();
}
}

View File

@@ -0,0 +1,17 @@
// using Webzine.Entity;
namespace Webzine.Repository.Contracts
{
public interface IStyleRepository
{
// void Add(Style style);
// void Delete(Style style);
// Style Find(int id);
// IEnumerable<Style> FindAll();
// void Update(Style style);
}
}

View File

@@ -0,0 +1,29 @@
// using Webzine.Entity;
namespace Webzine.Repository.Contracts
{
public interface ITitreRepository
{
// void Add(Titre titre);
// int Count();
// void Delete(Titre titre);
// Titre Find(int idTitre);
// IEnumerable<Titre> FindTitres(int offset, int limit);
// IEnumerable<Titre> FindAll();
// void IncrementNbLectures(Titre titre);
// void IncrementNbLikes(Titre titre);
// IEnumerable<Titre> Search(string mot);
// IEnumerable<Titre> SearchByStyle(string libelle);
// void Update(Titre titre);
}
}

View File

@@ -0,0 +1,24 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net10.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Faker.Net" Version="2.0.163" />
<PackageReference Include="NLog" Version="6.1.1" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<Content Include="..\Webzine.Documentation\StyleCop\stylecop.json">
<Link>stylecop.json</Link>
</Content>
</ItemGroup>
</Project>