From c5ce8f306802d898af3b655adeddbfba34f4d8e1 Mon Sep 17 00:00:00 2001 From: guardrex <1622880+guardrex@users.noreply.github.com> Date: Fri, 12 Dec 2025 11:48:08 -0500 Subject: [PATCH] Updates to the 10.0 movie dB tutorial sample --- .../.config/dotnet-tools.json | 2 +- .../BlazorWebAppMovies.csproj | 7 ++++-- .../BlazorWebAppMovies/BlazorWebAppMovies.sln | 25 ------------------- .../BlazorWebAppMovies.slnx | 3 +++ .../Components/Pages/MoviePages/Create.razor | 4 ++- .../Components/Pages/MoviePages/Index.razor | 7 +++--- .../Components/Pages/NotFound.razor | 15 ++++++++--- ... 20251212160348_InitialCreate.Designer.cs} | 4 +-- ...ate.cs => 20251212160348_InitialCreate.cs} | 0 ...62449_NewMovieDataAnnotations.Designer.cs} | 4 +-- ...20251212162449_NewMovieDataAnnotations.cs} | 0 ...20251212163047_AddRatingField.Designer.cs} | 4 +-- ...ld.cs => 20251212163047_AddRatingField.cs} | 0 .../BlazorWebAppMoviesContextModelSnapshot.cs | 2 +- .../Properties/launchSettings.json | 4 +-- 10.0/BlazorWebAppMovies/appsettings.json | 2 +- 16 files changed, 37 insertions(+), 46 deletions(-) delete mode 100644 10.0/BlazorWebAppMovies/BlazorWebAppMovies.sln create mode 100644 10.0/BlazorWebAppMovies/BlazorWebAppMovies.slnx rename 10.0/BlazorWebAppMovies/Migrations/{20251113170644_InitialCreate.Designer.cs => 20251212160348_InitialCreate.Designer.cs} (93%) rename 10.0/BlazorWebAppMovies/Migrations/{20251113170644_InitialCreate.cs => 20251212160348_InitialCreate.cs} (100%) rename 10.0/BlazorWebAppMovies/Migrations/{20251113174810_NewMovieDataAnnotations.Designer.cs => 20251212162449_NewMovieDataAnnotations.Designer.cs} (93%) rename 10.0/BlazorWebAppMovies/Migrations/{20251113174810_NewMovieDataAnnotations.cs => 20251212162449_NewMovieDataAnnotations.cs} (100%) rename 10.0/BlazorWebAppMovies/Migrations/{20251113175430_AddRatingField.Designer.cs => 20251212163047_AddRatingField.Designer.cs} (94%) rename 10.0/BlazorWebAppMovies/Migrations/{20251113175430_AddRatingField.cs => 20251212163047_AddRatingField.cs} (100%) diff --git a/10.0/BlazorWebAppMovies/.config/dotnet-tools.json b/10.0/BlazorWebAppMovies/.config/dotnet-tools.json index 0d6d3049b..fbb7b7641 100644 --- a/10.0/BlazorWebAppMovies/.config/dotnet-tools.json +++ b/10.0/BlazorWebAppMovies/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "dotnet-ef": { - "version": "10.0.0", + "version": "10.0.1", "commands": [ "dotnet-ef" ], diff --git a/10.0/BlazorWebAppMovies/BlazorWebAppMovies.csproj b/10.0/BlazorWebAppMovies/BlazorWebAppMovies.csproj index c74d54eb4..cbe67cbf7 100644 --- a/10.0/BlazorWebAppMovies/BlazorWebAppMovies.csproj +++ b/10.0/BlazorWebAppMovies/BlazorWebAppMovies.csproj @@ -11,8 +11,11 @@ - - + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + diff --git a/10.0/BlazorWebAppMovies/BlazorWebAppMovies.sln b/10.0/BlazorWebAppMovies/BlazorWebAppMovies.sln deleted file mode 100644 index 60ebb3478..000000000 --- a/10.0/BlazorWebAppMovies/BlazorWebAppMovies.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 18 -VisualStudioVersion = 18.3.11206.111 d18.3 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BlazorWebAppMovies", "BlazorWebAppMovies.csproj", "{C5F6720B-68AD-119B-26ED-FDE551D87111}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {C5F6720B-68AD-119B-26ED-FDE551D87111}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C5F6720B-68AD-119B-26ED-FDE551D87111}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C5F6720B-68AD-119B-26ED-FDE551D87111}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C5F6720B-68AD-119B-26ED-FDE551D87111}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {3316EBEA-E748-4B29-8412-30103D2D0F4A} - EndGlobalSection -EndGlobal diff --git a/10.0/BlazorWebAppMovies/BlazorWebAppMovies.slnx b/10.0/BlazorWebAppMovies/BlazorWebAppMovies.slnx new file mode 100644 index 000000000..f9ef6c62d --- /dev/null +++ b/10.0/BlazorWebAppMovies/BlazorWebAppMovies.slnx @@ -0,0 +1,3 @@ + + + diff --git a/10.0/BlazorWebAppMovies/Components/Pages/MoviePages/Create.razor b/10.0/BlazorWebAppMovies/Components/Pages/MoviePages/Create.razor index 4b3972796..113ba3cc9 100644 --- a/10.0/BlazorWebAppMovies/Components/Pages/MoviePages/Create.razor +++ b/10.0/BlazorWebAppMovies/Components/Pages/MoviePages/Create.razor @@ -51,7 +51,9 @@ @code { [SupplyParameterFromForm] - private Movie Movie { get; set; } = new(); + private Movie Movie { get; set; } = default!; + + protected override void OnInitialized() => Movie ??= new(); // To protect from overposting attacks, see https://learn.microsoft.com/aspnet/core/blazor/forms/#mitigate-overposting-attacks. private async Task AddMovie() diff --git a/10.0/BlazorWebAppMovies/Components/Pages/MoviePages/Index.razor b/10.0/BlazorWebAppMovies/Components/Pages/MoviePages/Index.razor index 69c3e1d6b..758aa4790 100644 --- a/10.0/BlazorWebAppMovies/Components/Pages/MoviePages/Index.razor +++ b/10.0/BlazorWebAppMovies/Components/Pages/MoviePages/Index.razor @@ -38,15 +38,14 @@ @code { + private BlazorWebAppMoviesContext context = default!; + private PaginationState pagination = new PaginationState { ItemsPerPage = 5 }; + private string titleFilter = string.Empty; private IQueryable FilteredMovies => context.Movie.Where(m => m.Title!.Contains(titleFilter)); - private BlazorWebAppMoviesContext context = default!; - - private PaginationState pagination = new PaginationState { ItemsPerPage = 5 }; - protected override void OnInitialized() { context = DbFactory.CreateDbContext(); diff --git a/10.0/BlazorWebAppMovies/Components/Pages/NotFound.razor b/10.0/BlazorWebAppMovies/Components/Pages/NotFound.razor index 917ada1d2..c5e558627 100644 --- a/10.0/BlazorWebAppMovies/Components/Pages/NotFound.razor +++ b/10.0/BlazorWebAppMovies/Components/Pages/NotFound.razor @@ -1,5 +1,14 @@ -@page "/not-found" + + +@page "/not-found" @layout MainLayout -

Not Found

-

Sorry, the content you are looking for does not exist.

\ No newline at end of file + +Not Found + + +

Not Found

+

Sorry, there's nothing at this address.

+ + +Back to Home diff --git a/10.0/BlazorWebAppMovies/Migrations/20251113170644_InitialCreate.Designer.cs b/10.0/BlazorWebAppMovies/Migrations/20251212160348_InitialCreate.Designer.cs similarity index 93% rename from 10.0/BlazorWebAppMovies/Migrations/20251113170644_InitialCreate.Designer.cs rename to 10.0/BlazorWebAppMovies/Migrations/20251212160348_InitialCreate.Designer.cs index 8c8420f0b..98454e5e0 100644 --- a/10.0/BlazorWebAppMovies/Migrations/20251113170644_InitialCreate.Designer.cs +++ b/10.0/BlazorWebAppMovies/Migrations/20251212160348_InitialCreate.Designer.cs @@ -12,7 +12,7 @@ namespace BlazorWebAppMovies.Migrations { [DbContext(typeof(BlazorWebAppMoviesContext))] - [Migration("20251113170644_InitialCreate")] + [Migration("20251212160348_InitialCreate")] partial class InitialCreate { /// @@ -20,7 +20,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder - .HasAnnotation("ProductVersion", "10.0.0-rc.1.25451.107") + .HasAnnotation("ProductVersion", "10.0.0") .HasAnnotation("Relational:MaxIdentifierLength", 128); SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); diff --git a/10.0/BlazorWebAppMovies/Migrations/20251113170644_InitialCreate.cs b/10.0/BlazorWebAppMovies/Migrations/20251212160348_InitialCreate.cs similarity index 100% rename from 10.0/BlazorWebAppMovies/Migrations/20251113170644_InitialCreate.cs rename to 10.0/BlazorWebAppMovies/Migrations/20251212160348_InitialCreate.cs diff --git a/10.0/BlazorWebAppMovies/Migrations/20251113174810_NewMovieDataAnnotations.Designer.cs b/10.0/BlazorWebAppMovies/Migrations/20251212162449_NewMovieDataAnnotations.Designer.cs similarity index 93% rename from 10.0/BlazorWebAppMovies/Migrations/20251113174810_NewMovieDataAnnotations.Designer.cs rename to 10.0/BlazorWebAppMovies/Migrations/20251212162449_NewMovieDataAnnotations.Designer.cs index 56a20b6cf..42f921001 100644 --- a/10.0/BlazorWebAppMovies/Migrations/20251113174810_NewMovieDataAnnotations.Designer.cs +++ b/10.0/BlazorWebAppMovies/Migrations/20251212162449_NewMovieDataAnnotations.Designer.cs @@ -12,7 +12,7 @@ namespace BlazorWebAppMovies.Migrations { [DbContext(typeof(BlazorWebAppMoviesContext))] - [Migration("20251113174810_NewMovieDataAnnotations")] + [Migration("20251212162449_NewMovieDataAnnotations")] partial class NewMovieDataAnnotations { /// @@ -20,7 +20,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder - .HasAnnotation("ProductVersion", "10.0.0-rc.1.25451.107") + .HasAnnotation("ProductVersion", "10.0.0") .HasAnnotation("Relational:MaxIdentifierLength", 128); SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); diff --git a/10.0/BlazorWebAppMovies/Migrations/20251113174810_NewMovieDataAnnotations.cs b/10.0/BlazorWebAppMovies/Migrations/20251212162449_NewMovieDataAnnotations.cs similarity index 100% rename from 10.0/BlazorWebAppMovies/Migrations/20251113174810_NewMovieDataAnnotations.cs rename to 10.0/BlazorWebAppMovies/Migrations/20251212162449_NewMovieDataAnnotations.cs diff --git a/10.0/BlazorWebAppMovies/Migrations/20251113175430_AddRatingField.Designer.cs b/10.0/BlazorWebAppMovies/Migrations/20251212163047_AddRatingField.Designer.cs similarity index 94% rename from 10.0/BlazorWebAppMovies/Migrations/20251113175430_AddRatingField.Designer.cs rename to 10.0/BlazorWebAppMovies/Migrations/20251212163047_AddRatingField.Designer.cs index 8e878b207..e76caefa8 100644 --- a/10.0/BlazorWebAppMovies/Migrations/20251113175430_AddRatingField.Designer.cs +++ b/10.0/BlazorWebAppMovies/Migrations/20251212163047_AddRatingField.Designer.cs @@ -12,7 +12,7 @@ namespace BlazorWebAppMovies.Migrations { [DbContext(typeof(BlazorWebAppMoviesContext))] - [Migration("20251113175430_AddRatingField")] + [Migration("20251212163047_AddRatingField")] partial class AddRatingField { /// @@ -20,7 +20,7 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder - .HasAnnotation("ProductVersion", "10.0.0-rc.1.25451.107") + .HasAnnotation("ProductVersion", "10.0.0") .HasAnnotation("Relational:MaxIdentifierLength", 128); SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); diff --git a/10.0/BlazorWebAppMovies/Migrations/20251113175430_AddRatingField.cs b/10.0/BlazorWebAppMovies/Migrations/20251212163047_AddRatingField.cs similarity index 100% rename from 10.0/BlazorWebAppMovies/Migrations/20251113175430_AddRatingField.cs rename to 10.0/BlazorWebAppMovies/Migrations/20251212163047_AddRatingField.cs diff --git a/10.0/BlazorWebAppMovies/Migrations/BlazorWebAppMoviesContextModelSnapshot.cs b/10.0/BlazorWebAppMovies/Migrations/BlazorWebAppMoviesContextModelSnapshot.cs index 7c63ee3eb..17d1182be 100644 --- a/10.0/BlazorWebAppMovies/Migrations/BlazorWebAppMoviesContextModelSnapshot.cs +++ b/10.0/BlazorWebAppMovies/Migrations/BlazorWebAppMoviesContextModelSnapshot.cs @@ -17,7 +17,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder - .HasAnnotation("ProductVersion", "10.0.0-rc.1.25451.107") + .HasAnnotation("ProductVersion", "10.0.0") .HasAnnotation("Relational:MaxIdentifierLength", 128); SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); diff --git a/10.0/BlazorWebAppMovies/Properties/launchSettings.json b/10.0/BlazorWebAppMovies/Properties/launchSettings.json index 508e4ec2d..34e9b0fc0 100644 --- a/10.0/BlazorWebAppMovies/Properties/launchSettings.json +++ b/10.0/BlazorWebAppMovies/Properties/launchSettings.json @@ -5,7 +5,7 @@ "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": true, - "applicationUrl": "http://localhost:5074", + "applicationUrl": "http://localhost:5128", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } @@ -14,7 +14,7 @@ "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": true, - "applicationUrl": "https://localhost:7014;http://localhost:5074", + "applicationUrl": "https://localhost:7139;http://localhost:5128", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } diff --git a/10.0/BlazorWebAppMovies/appsettings.json b/10.0/BlazorWebAppMovies/appsettings.json index 2e39d3c46..8e7fff233 100644 --- a/10.0/BlazorWebAppMovies/appsettings.json +++ b/10.0/BlazorWebAppMovies/appsettings.json @@ -7,6 +7,6 @@ }, "AllowedHosts": "*", "ConnectionStrings": { - "BlazorWebAppMoviesContext": "Server=(localdb)\\mssqllocaldb;Database=BlazorWebAppMoviesContext-cd087521-12db-4b9b-a6fb-ad872a85ef0c;Trusted_Connection=True;MultipleActiveResultSets=true" + "BlazorWebAppMoviesContext": "Server=(localdb)\\mssqllocaldb;Database=BlazorWebAppMoviesContext-2fd342d0-8195-4c03-8bd1-a2598fc3b39d;Trusted_Connection=True;MultipleActiveResultSets=true" } }