added model validation

This commit is contained in:
Damien Ostler 2024-02-25 20:50:12 -05:00
parent ce945516fa
commit b8f576d1f0
6 changed files with 36 additions and 4 deletions

View File

@ -0,0 +1,27 @@
using Microsoft.AspNetCore.Mvc.Filters;
namespace comissions.app.database.Filters;
public class LoggingFilter : IActionFilter
{
private readonly ILogger _logger;
public LoggingFilter(ILogger<LoggingFilter> logger)
{
_logger = logger;
}
public void OnActionExecuting(ActionExecutingContext context)
{
// Log model state errors
if (!context.ModelState.IsValid)
{
Console.WriteLine("Model validation failed: {@Errors}", context.ModelState);
}
}
public void OnActionExecuted(ActionExecutedContext context)
{
// Do nothing on action executed
}
}

View File

@ -6,6 +6,7 @@ using comissions.app.api.Services.Payment;
using comissions.app.api.Services.Storage; using comissions.app.api.Services.Storage;
using Auth0.AspNetCore.Authentication; using Auth0.AspNetCore.Authentication;
using comissions.app.database; using comissions.app.database;
using comissions.app.database.Filters;
using Microsoft.AspNetCore.Authentication.JwtBearer; using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
@ -82,7 +83,10 @@ builder.Services.AddSwaggerGen(options =>
}); });
builder.Services.RegisterNovuClients(builder.Configuration).AddTransient<NovuClient>(); builder.Services.RegisterNovuClients(builder.Configuration).AddTransient<NovuClient>();
builder.Services.AddControllers() builder.Services.AddControllers(options =>
{
options.Filters.Add(new LoggingFilter()); // Register a custom logging filter
})
.AddJsonOptions(options=> .AddJsonOptions(options=>
options.JsonSerializerOptions.ReferenceHandler = System.Text.Json.Serialization.ReferenceHandler.IgnoreCycles options.JsonSerializerOptions.ReferenceHandler = System.Text.Json.Serialization.ReferenceHandler.IgnoreCycles
); );

View File

@ -20,6 +20,7 @@
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="8.0.1" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="8.0.1" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="Novu" Version="0.3.3" /> <PackageReference Include="Novu" Version="0.3.3" />
<PackageReference Include="Novu.Extensions" Version="0.3.3" /> <PackageReference Include="Novu.Extensions" Version="0.3.3" />
<PackageReference Include="Novu.Sync" Version="0.3.3" /> <PackageReference Include="Novu.Sync" Version="0.3.3" />

View File

@ -13,7 +13,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("comissions.app.database.migrator")] [assembly: System.Reflection.AssemblyCompanyAttribute("comissions.app.database.migrator")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+c497a8505fba559d49c46ab3f9a465f899ed33b6")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+ce945516fa472044c5900b733c4ac70a7330bddf")]
[assembly: System.Reflection.AssemblyProductAttribute("comissions.app.database.migrator")] [assembly: System.Reflection.AssemblyProductAttribute("comissions.app.database.migrator")]
[assembly: System.Reflection.AssemblyTitleAttribute("comissions.app.database.migrator")] [assembly: System.Reflection.AssemblyTitleAttribute("comissions.app.database.migrator")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
0e810879af95601127a574da7a030fed6467c0fde930e21728d9486911f1212c 649880a5ab7f36fa2046be54ee1f282be3d10c5d68933f1dd6511910a7605702

View File

@ -1 +1 @@
17086505533886000 17089118002979834