From f2ed11144e02a42fc52a886b8d9c558f84ebeea2 Mon Sep 17 00:00:00 2001 From: alestoya Date: Mon, 24 Feb 2025 15:52:27 +0200 Subject: [PATCH 1/2] chore: add migration to comply with net9 --- .../20250224111117_InitialUpdate.Designer.cs | 364 ++++++++++++++++++ .../20250224111117_InitialUpdate.cs | 28 ++ .../GeneralDbContextModelSnapshot.cs | 99 +++-- 3 files changed, 450 insertions(+), 41 deletions(-) create mode 100644 Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/20250224111117_InitialUpdate.Designer.cs create mode 100644 Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/20250224111117_InitialUpdate.cs diff --git a/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/20250224111117_InitialUpdate.Designer.cs b/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/20250224111117_InitialUpdate.Designer.cs new file mode 100644 index 0000000..ea5e449 --- /dev/null +++ b/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/20250224111117_InitialUpdate.Designer.cs @@ -0,0 +1,364 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Telerik.Examples.Mvc.Models; + +#nullable disable + +namespace Telerik.Examples.Mvc.Migrations +{ + [DbContext(typeof(GeneralDbContext))] + [Migration("20250224111117_InitialUpdate")] + partial class InitialUpdate + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.2") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b => + { + b.Property("Id") + .HasColumnType("nvarchar(450)"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("nvarchar(max)"); + + b.Property("Name") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("NormalizedName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.HasKey("Id"); + + b.HasIndex("NormalizedName") + .IsUnique() + .HasDatabaseName("RoleNameIndex") + .HasFilter("[NormalizedName] IS NOT NULL"); + + b.ToTable("AspNetRoles", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("ClaimType") + .HasColumnType("nvarchar(max)"); + + b.Property("ClaimValue") + .HasColumnType("nvarchar(max)"); + + b.Property("RoleId") + .IsRequired() + .HasColumnType("nvarchar(450)"); + + b.HasKey("Id"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetRoleClaims", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUser", b => + { + b.Property("Id") + .HasColumnType("nvarchar(450)"); + + b.Property("AccessFailedCount") + .HasColumnType("int"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("nvarchar(max)"); + + b.Property("Email") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("EmailConfirmed") + .HasColumnType("bit"); + + b.Property("LockoutEnabled") + .HasColumnType("bit"); + + b.Property("LockoutEnd") + .HasColumnType("datetimeoffset"); + + b.Property("NormalizedEmail") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("NormalizedUserName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("PasswordHash") + .HasColumnType("nvarchar(max)"); + + b.Property("PhoneNumber") + .HasColumnType("nvarchar(max)"); + + b.Property("PhoneNumberConfirmed") + .HasColumnType("bit"); + + b.Property("SecurityStamp") + .HasColumnType("nvarchar(max)"); + + b.Property("TwoFactorEnabled") + .HasColumnType("bit"); + + b.Property("UserName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.HasKey("Id"); + + b.HasIndex("NormalizedEmail") + .HasDatabaseName("EmailIndex"); + + b.HasIndex("NormalizedUserName") + .IsUnique() + .HasDatabaseName("UserNameIndex") + .HasFilter("[NormalizedUserName] IS NOT NULL"); + + b.ToTable("AspNetUsers", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("ClaimType") + .HasColumnType("nvarchar(max)"); + + b.Property("ClaimValue") + .HasColumnType("nvarchar(max)"); + + b.Property("UserId") + .IsRequired() + .HasColumnType("nvarchar(450)"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserClaims", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.Property("LoginProvider") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("ProviderKey") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("ProviderDisplayName") + .HasColumnType("nvarchar(max)"); + + b.Property("UserId") + .IsRequired() + .HasColumnType("nvarchar(450)"); + + b.HasKey("LoginProvider", "ProviderKey"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserLogins", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.Property("UserId") + .HasColumnType("nvarchar(450)"); + + b.Property("RoleId") + .HasColumnType("nvarchar(450)"); + + b.HasKey("UserId", "RoleId"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetUserRoles", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.Property("UserId") + .HasColumnType("nvarchar(450)"); + + b.Property("LoginProvider") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("Name") + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property("Value") + .HasColumnType("nvarchar(max)"); + + b.HasKey("UserId", "LoginProvider", "Name"); + + b.ToTable("AspNetUserTokens", (string)null); + }); + + modelBuilder.Entity("Telerik.Examples.Mvc.Models.EditorData", b => + { + b.Property("ContentId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("ContentId")); + + b.Property("EditorContent") + .HasColumnType("nvarchar(max)"); + + b.HasKey("ContentId"); + + b.ToTable("EditorData"); + }); + + modelBuilder.Entity("Telerik.Examples.Mvc.Models.Task", b => + { + b.Property("TaskID") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("TaskID")); + + b.Property("Description") + .HasColumnType("nvarchar(max)"); + + b.Property("End") + .HasColumnType("datetime2"); + + b.Property("EndTimezone") + .HasColumnType("nvarchar(max)"); + + b.Property("IsAllDay") + .HasColumnType("bit"); + + b.Property("RecurrenceException") + .HasColumnType("nvarchar(max)"); + + b.Property("RecurrenceID") + .HasColumnType("int"); + + b.Property("RecurrenceRule") + .HasColumnType("nvarchar(max)"); + + b.Property("RoomID") + .HasColumnType("int"); + + b.Property("Start") + .HasColumnType("datetime2"); + + b.Property("StartTimezone") + .HasColumnType("nvarchar(max)"); + + b.Property("Task1TaskID") + .HasColumnType("int"); + + b.Property("Title") + .HasColumnType("nvarchar(max)"); + + b.HasKey("TaskID"); + + b.HasIndex("Task1TaskID"); + + b.ToTable("Tasks"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("Microsoft.AspNetCore.Identity.IdentityUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Telerik.Examples.Mvc.Models.Task", b => + { + b.HasOne("Telerik.Examples.Mvc.Models.Task", "Task1") + .WithMany("Tasks1") + .HasForeignKey("Task1TaskID"); + + b.Navigation("Task1"); + }); + + modelBuilder.Entity("Telerik.Examples.Mvc.Models.Task", b => + { + b.Navigation("Tasks1"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/20250224111117_InitialUpdate.cs b/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/20250224111117_InitialUpdate.cs new file mode 100644 index 0000000..f6f6b3b --- /dev/null +++ b/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/20250224111117_InitialUpdate.cs @@ -0,0 +1,28 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace Telerik.Examples.Mvc.Migrations +{ + /// + public partial class InitialUpdate : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "RoomID", + table: "Tasks", + type: "int", + nullable: true); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "RoomID", + table: "Tasks"); + } + } +} diff --git a/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/GeneralDbContextModelSnapshot.cs b/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/GeneralDbContextModelSnapshot.cs index abeeef0..0e8aefd 100644 --- a/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/GeneralDbContextModelSnapshot.cs +++ b/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Migrations/GeneralDbContextModelSnapshot.cs @@ -6,6 +6,8 @@ using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using Telerik.Examples.Mvc.Models; +#nullable disable + namespace Telerik.Examples.Mvc.Migrations { [DbContext(typeof(GeneralDbContext))] @@ -15,9 +17,10 @@ protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder - .HasAnnotation("ProductVersion", "3.0.0") - .HasAnnotation("Relational:MaxIdentifierLength", 128) - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + .HasAnnotation("ProductVersion", "9.0.2") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b => { @@ -29,29 +32,30 @@ protected override void BuildModel(ModelBuilder modelBuilder) .HasColumnType("nvarchar(max)"); b.Property("Name") - .HasColumnType("nvarchar(256)") - .HasMaxLength(256); + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); b.Property("NormalizedName") - .HasColumnType("nvarchar(256)") - .HasMaxLength(256); + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); b.HasKey("Id"); b.HasIndex("NormalizedName") .IsUnique() - .HasName("RoleNameIndex") + .HasDatabaseName("RoleNameIndex") .HasFilter("[NormalizedName] IS NOT NULL"); - b.ToTable("AspNetRoles"); + b.ToTable("AspNetRoles", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() - .HasColumnType("int") - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("ClaimType") .HasColumnType("nvarchar(max)"); @@ -67,7 +71,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasIndex("RoleId"); - b.ToTable("AspNetRoleClaims"); + b.ToTable("AspNetRoleClaims", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUser", b => @@ -83,8 +87,8 @@ protected override void BuildModel(ModelBuilder modelBuilder) .HasColumnType("nvarchar(max)"); b.Property("Email") - .HasColumnType("nvarchar(256)") - .HasMaxLength(256); + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); b.Property("EmailConfirmed") .HasColumnType("bit"); @@ -96,12 +100,12 @@ protected override void BuildModel(ModelBuilder modelBuilder) .HasColumnType("datetimeoffset"); b.Property("NormalizedEmail") - .HasColumnType("nvarchar(256)") - .HasMaxLength(256); + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); b.Property("NormalizedUserName") - .HasColumnType("nvarchar(256)") - .HasMaxLength(256); + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); b.Property("PasswordHash") .HasColumnType("nvarchar(max)"); @@ -119,28 +123,29 @@ protected override void BuildModel(ModelBuilder modelBuilder) .HasColumnType("bit"); b.Property("UserName") - .HasColumnType("nvarchar(256)") - .HasMaxLength(256); + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); b.HasKey("Id"); b.HasIndex("NormalizedEmail") - .HasName("EmailIndex"); + .HasDatabaseName("EmailIndex"); b.HasIndex("NormalizedUserName") .IsUnique() - .HasName("UserNameIndex") + .HasDatabaseName("UserNameIndex") .HasFilter("[NormalizedUserName] IS NOT NULL"); - b.ToTable("AspNetUsers"); + b.ToTable("AspNetUsers", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() - .HasColumnType("int") - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); b.Property("ClaimType") .HasColumnType("nvarchar(max)"); @@ -156,18 +161,18 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasIndex("UserId"); - b.ToTable("AspNetUserClaims"); + b.ToTable("AspNetUserClaims", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => { b.Property("LoginProvider") - .HasColumnType("nvarchar(128)") - .HasMaxLength(128); + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); b.Property("ProviderKey") - .HasColumnType("nvarchar(128)") - .HasMaxLength(128); + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); b.Property("ProviderDisplayName") .HasColumnType("nvarchar(max)"); @@ -180,7 +185,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasIndex("UserId"); - b.ToTable("AspNetUserLogins"); + b.ToTable("AspNetUserLogins", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => @@ -195,7 +200,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasIndex("RoleId"); - b.ToTable("AspNetUserRoles"); + b.ToTable("AspNetUserRoles", (string)null); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => @@ -204,27 +209,28 @@ protected override void BuildModel(ModelBuilder modelBuilder) .HasColumnType("nvarchar(450)"); b.Property("LoginProvider") - .HasColumnType("nvarchar(128)") - .HasMaxLength(128); + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); b.Property("Name") - .HasColumnType("nvarchar(128)") - .HasMaxLength(128); + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); b.Property("Value") .HasColumnType("nvarchar(max)"); b.HasKey("UserId", "LoginProvider", "Name"); - b.ToTable("AspNetUserTokens"); + b.ToTable("AspNetUserTokens", (string)null); }); modelBuilder.Entity("Telerik.Examples.Mvc.Models.EditorData", b => { b.Property("ContentId") .ValueGeneratedOnAdd() - .HasColumnType("int") - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("ContentId")); b.Property("EditorContent") .HasColumnType("nvarchar(max)"); @@ -238,8 +244,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) { b.Property("TaskID") .ValueGeneratedOnAdd() - .HasColumnType("int") - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("TaskID")); b.Property("Description") .HasColumnType("nvarchar(max)"); @@ -262,6 +269,9 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("RecurrenceRule") .HasColumnType("nvarchar(max)"); + b.Property("RoomID") + .HasColumnType("int"); + b.Property("Start") .HasColumnType("datetime2"); @@ -337,6 +347,13 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.HasOne("Telerik.Examples.Mvc.Models.Task", "Task1") .WithMany("Tasks1") .HasForeignKey("Task1TaskID"); + + b.Navigation("Task1"); + }); + + modelBuilder.Entity("Telerik.Examples.Mvc.Models.Task", b => + { + b.Navigation("Tasks1"); }); #pragma warning restore 612, 618 } From e19380b49c361ab26f75499c3442ce568c37bbd9 Mon Sep 17 00:00:00 2001 From: alestoya Date: Mon, 24 Feb 2025 15:52:54 +0200 Subject: [PATCH 2/2] chore: bump dependencies --- ...erik.Examples.ContentSecurityPolicy.csproj | 6 ++--- .../Telerik.Examples.Mvc.csproj | 22 +++++++++---------- .../Telerik.Examples.RazorPages.csproj | 14 ++++++------ 3 files changed, 21 insertions(+), 21 deletions(-) diff --git a/Telerik.Examples.ContentSecurityPolicy/Telerik.Examples.ContentSecurityPolicy.csproj b/Telerik.Examples.ContentSecurityPolicy/Telerik.Examples.ContentSecurityPolicy.csproj index 9d9df2a..7b1fa17 100644 --- a/Telerik.Examples.ContentSecurityPolicy/Telerik.Examples.ContentSecurityPolicy.csproj +++ b/Telerik.Examples.ContentSecurityPolicy/Telerik.Examples.ContentSecurityPolicy.csproj @@ -40,12 +40,12 @@ - + - - + + diff --git a/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Telerik.Examples.Mvc.csproj b/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Telerik.Examples.Mvc.csproj index 3bddea1..ce8f9a0 100644 --- a/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Telerik.Examples.Mvc.csproj +++ b/Telerik.Examples.Mvc/Telerik.Examples.Mvc/Telerik.Examples.Mvc.csproj @@ -5,21 +5,21 @@ - - - - - - - - - + + + + + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive - + - + diff --git a/Telerik.Examples.RazorPages/Telerik.Examples.RazorPages/Telerik.Examples.RazorPages.csproj b/Telerik.Examples.RazorPages/Telerik.Examples.RazorPages/Telerik.Examples.RazorPages.csproj index 95acaec..43aea84 100644 --- a/Telerik.Examples.RazorPages/Telerik.Examples.RazorPages/Telerik.Examples.RazorPages.csproj +++ b/Telerik.Examples.RazorPages/Telerik.Examples.RazorPages/Telerik.Examples.RazorPages.csproj @@ -7,17 +7,17 @@ - - - - + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive - + - - + +