From f0f74e867e594930d6e07dd066acace95ddfe695 Mon Sep 17 00:00:00 2001 From: Joseph Milazzo Date: Sun, 6 Jun 2021 16:13:07 -0500 Subject: [PATCH] Fixed the constraint issue with Metadata and ensure we log parameters on development modes. (#273) --- API/Data/LibraryRepository.cs | 2 ++ API/Extensions/ApplicationServiceExtensions.cs | 5 ++++- API/Services/Tasks/ScannerService.cs | 1 + API/Startup.cs | 6 ++++-- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/API/Data/LibraryRepository.cs b/API/Data/LibraryRepository.cs index c065bface..0af1f6760 100644 --- a/API/Data/LibraryRepository.cs +++ b/API/Data/LibraryRepository.cs @@ -106,6 +106,8 @@ namespace API.Data .Where(x => x.Id == libraryId) .Include(f => f.Folders) .Include(l => l.Series) + .ThenInclude(s => s.Metadata) + .Include(l => l.Series) .ThenInclude(s => s.Volumes) .ThenInclude(v => v.Chapters) .ThenInclude(c => c.Files) diff --git a/API/Extensions/ApplicationServiceExtensions.cs b/API/Extensions/ApplicationServiceExtensions.cs index a3406ae27..2169aeb67 100644 --- a/API/Extensions/ApplicationServiceExtensions.cs +++ b/API/Extensions/ApplicationServiceExtensions.cs @@ -4,16 +4,18 @@ using API.Interfaces; using API.Interfaces.Services; using API.Services; using API.Services.Tasks; +using Microsoft.AspNetCore.Hosting; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; namespace API.Extensions { public static class ApplicationServiceExtensions { - public static IServiceCollection AddApplicationServices(this IServiceCollection services, IConfiguration config) + public static IServiceCollection AddApplicationServices(this IServiceCollection services, IConfiguration config, IWebHostEnvironment env) { services.AddAutoMapper(typeof(AutoMapperProfiles).Assembly); services.AddScoped(); @@ -32,6 +34,7 @@ namespace API.Extensions services.AddDbContext(options => { options.UseSqlite(config.GetConnectionString("DefaultConnection")); + options.EnableSensitiveDataLogging(env.IsDevelopment()); }); services.AddLogging(loggingBuilder => diff --git a/API/Services/Tasks/ScannerService.cs b/API/Services/Tasks/ScannerService.cs index 12f30afad..e22803c4b 100644 --- a/API/Services/Tasks/ScannerService.cs +++ b/API/Services/Tasks/ScannerService.cs @@ -228,6 +228,7 @@ namespace API.Services.Tasks existingSeries.NormalizedName = Parser.Parser.Normalize(existingSeries.Name); existingSeries.OriginalName ??= infos[0].Series; + existingSeries.Metadata ??= DbFactory.SeriesMetadata(new List()); } // Now, we only have to deal with series that exist on disk. Let's recalculate the volumes for each series diff --git a/API/Startup.cs b/API/Startup.cs index 82fd667a3..97d64145e 100644 --- a/API/Startup.cs +++ b/API/Startup.cs @@ -24,16 +24,18 @@ namespace API public class Startup { private readonly IConfiguration _config; + private readonly IWebHostEnvironment _env; - public Startup(IConfiguration config) + public Startup(IConfiguration config, IWebHostEnvironment env) { _config = config; + _env = env; } // This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { - services.AddApplicationServices(_config); + services.AddApplicationServices(_config, _env); services.AddControllers(); services.Configure(options => {