From b9db73b613847ed0f36276af39d4d770a9d7c82c Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Fri, 1 Jun 2018 15:24:29 -0500 Subject: [PATCH] worked through 2.x to 2.1 migration guide, Pomelo seems unsopported still causing EF issues https://docs.microsoft.com/en-us/aspnet/core/migration/20_21?view=aspnetcore-2.1 https://github.com/PomeloFoundation/Pomelo.EntityFrameworkCore.MySql/issues/514 https://stackoverflow.com/questions/50650463/specifically-target-older-version-of-a-net-standard-asset-entityframeworkcore --- src/FilterLists.Api/FilterLists.Api.csproj | 7 ++--- src/FilterLists.Api/Program.cs | 11 +++---- src/FilterLists.Api/Startup.cs | 29 +++++++++++++++++-- src/FilterLists.Data/FilterLists.Data.csproj | 2 +- src/FilterLists.Web/FilterLists.Web.csproj | 9 ++---- src/FilterLists.Web/Program.cs | 10 ++++--- src/FilterLists.Web/Startup.cs | 30 +++++++++++--------- 7 files changed, 62 insertions(+), 36 deletions(-) diff --git a/src/FilterLists.Api/FilterLists.Api.csproj b/src/FilterLists.Api/FilterLists.Api.csproj index 1e31b869d..61e2e8eb6 100644 --- a/src/FilterLists.Api/FilterLists.Api.csproj +++ b/src/FilterLists.Api/FilterLists.Api.csproj @@ -22,17 +22,14 @@ + - + - - - - diff --git a/src/FilterLists.Api/Program.cs b/src/FilterLists.Api/Program.cs index deea0fd5c..431a7b59c 100644 --- a/src/FilterLists.Api/Program.cs +++ b/src/FilterLists.Api/Program.cs @@ -1,22 +1,23 @@ -using Microsoft.AspNetCore; +using JetBrains.Annotations; +using Microsoft.AspNetCore; using Microsoft.AspNetCore.Hosting; namespace FilterLists.Api { + [UsedImplicitly] public class Program { public static void Main(string[] args) { - BuildWebHost(args).Run(); + CreateWebHostBuilder(args).Build().Run(); } - public static IWebHost BuildWebHost(string[] args) + private static IWebHostBuilder CreateWebHostBuilder(string[] args) { return WebHost.CreateDefaultBuilder(args) .UseUrls("http://localhost:5000;") .UseApplicationInsights() - .UseStartup() - .Build(); + .UseStartup(); } } } \ No newline at end of file diff --git a/src/FilterLists.Api/Startup.cs b/src/FilterLists.Api/Startup.cs index 02ae9c376..d0c6822d1 100644 --- a/src/FilterLists.Api/Startup.cs +++ b/src/FilterLists.Api/Startup.cs @@ -2,14 +2,19 @@ using FilterLists.Data; using FilterLists.Data.Seed.Extensions; using FilterLists.Services.DependencyInjection.Extensions; +using JetBrains.Annotations; using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Hosting; +using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.HttpOverrides; +using Microsoft.AspNetCore.Mvc; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; namespace FilterLists.Api { + [UsedImplicitly] public class Startup { public Startup(IConfiguration configuration) @@ -17,16 +22,34 @@ public Startup(IConfiguration configuration) Configuration = configuration; } - public IConfiguration Configuration { get; } + private IConfiguration Configuration { get; } + [UsedImplicitly] public void ConfigureServices(IServiceCollection services) { + services.Configure(options => + { + options.CheckConsentNeeded = context => true; + options.MinimumSameSitePolicy = SameSiteMode.None; + }); + services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); services.AddFilterListsServices(Configuration); services.AddFilterListsApi(); } - public void Configure(IApplicationBuilder app) + [UsedImplicitly] + public void Configure(IApplicationBuilder app, IHostingEnvironment env) { + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); + } + else + { + app.UseExceptionHandler("/Error"); + app.UseHsts(); + } + app.UseForwardedHeaders(new ForwardedHeadersOptions { ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto @@ -37,7 +60,9 @@ public void Configure(IApplicationBuilder app) c.SwaggerEndpoint("/v1/swagger.json", "FilterLists API V1"); c.RoutePrefix = "docs"; }); + app.UseHttpsRedirection(); app.UseStaticFiles(); + app.UseCookiePolicy(); app.UseMvc(routes => { routes.MapRoute("noAction", "v{version:apiVersion}/{controller}/{id:int}", diff --git a/src/FilterLists.Data/FilterLists.Data.csproj b/src/FilterLists.Data/FilterLists.Data.csproj index 87c88cb48..4d8f83e34 100644 --- a/src/FilterLists.Data/FilterLists.Data.csproj +++ b/src/FilterLists.Data/FilterLists.Data.csproj @@ -8,7 +8,7 @@ - + diff --git a/src/FilterLists.Web/FilterLists.Web.csproj b/src/FilterLists.Web/FilterLists.Web.csproj index ffbf4f6a0..7229407c8 100644 --- a/src/FilterLists.Web/FilterLists.Web.csproj +++ b/src/FilterLists.Web/FilterLists.Web.csproj @@ -1,4 +1,4 @@ - + netcoreapp2.1 @@ -8,15 +8,12 @@ + - + - - - - diff --git a/src/FilterLists.Web/Program.cs b/src/FilterLists.Web/Program.cs index 42485e17e..a51527120 100644 --- a/src/FilterLists.Web/Program.cs +++ b/src/FilterLists.Web/Program.cs @@ -1,21 +1,23 @@ +using JetBrains.Annotations; using Microsoft.AspNetCore; using Microsoft.AspNetCore.Hosting; namespace FilterLists.Web { + [UsedImplicitly] public class Program { public static void Main(string[] args) { - BuildWebHost(args).Run(); + CreateWebHostBuilder(args).Build().Run(); } - public static IWebHost BuildWebHost(string[] args) + private static IWebHostBuilder CreateWebHostBuilder(string[] args) { return WebHost.CreateDefaultBuilder(args) .UseUrls("http://localhost:5001;") - .UseStartup() - .Build(); + .UseApplicationInsights() + .UseStartup(); } } } \ No newline at end of file diff --git a/src/FilterLists.Web/Startup.cs b/src/FilterLists.Web/Startup.cs index 1e989ebd2..17cfdd144 100644 --- a/src/FilterLists.Web/Startup.cs +++ b/src/FilterLists.Web/Startup.cs @@ -1,27 +1,34 @@ +using JetBrains.Annotations; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.SpaServices.Webpack; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; namespace FilterLists.Web { + [UsedImplicitly] public class Startup { public Startup(IConfiguration configuration) { - Configuration = configuration; } - public IConfiguration Configuration { get; } - - // This method gets called by the runtime. Use this method to add services to the container. + [UsedImplicitly] public void ConfigureServices(IServiceCollection services) { + services.Configure(options => + { + options.CheckConsentNeeded = context => true; + options.MinimumSameSitePolicy = SameSiteMode.None; + }); + services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); services.AddMvc(); } - // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. + [UsedImplicitly] public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) @@ -36,19 +43,16 @@ public void Configure(IApplicationBuilder app, IHostingEnvironment env) else { app.UseExceptionHandler("/Home/Error"); + app.UseHsts(); } + app.UseHttpsRedirection(); app.UseStaticFiles(); - + app.UseCookiePolicy(); app.UseMvc(routes => { - routes.MapRoute( - "default", - "{controller=Home}/{action=Index}/{id?}"); - - routes.MapSpaFallbackRoute( - "spa-fallback", - new {controller = "Home", action = "Index"}); + routes.MapRoute("default", "{controller=Home}/{action=Index}/{id?}"); + routes.MapSpaFallbackRoute("spa-fallback", new {controller = "Home", action = "Index"}); }); } }