Add EF-Migration for changing id on models from int to Guid

This commit is contained in:
Francesco Lorenzo D'Amico
2026-08-19 14:23:15 +02:00
parent 1e5f2adcc7
commit 3392eb8823
3 changed files with 227 additions and 8 deletions
@@ -0,0 +1,124 @@
// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using RazorPagesMovie.Data;
#nullable disable
namespace RazorPagesMovie.Migrations
{
[DbContext(typeof(RazorPagesMovieContext))]
[Migration("20260819120324_ChangeAdminUserAndContactMessageIdToGuid")]
partial class ChangeAdminUserAndContactMessageIdToGuid
{
/// <inheritdoc />
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "8.0.28")
.HasAnnotation("Relational:MaxIdentifierLength", 128);
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
modelBuilder.Entity("RazorPagesMovie.Models.AdminUser", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("PasswordHash")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<string>("Username")
.IsRequired()
.HasMaxLength(100)
.HasColumnType("nvarchar(100)");
b.HasKey("Id");
b.ToTable("AdminUser");
});
modelBuilder.Entity("RazorPagesMovie.Models.ContactMessage", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("Email")
.IsRequired()
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<string>("Message")
.IsRequired()
.HasMaxLength(5000)
.HasColumnType("nvarchar(max)");
b.Property<string>("Name")
.IsRequired()
.HasMaxLength(100)
.HasColumnType("nvarchar(100)");
b.Property<bool>("NotificationSent")
.HasColumnType("bit");
b.Property<string>("Phone")
.HasMaxLength(30)
.HasColumnType("nvarchar(30)");
b.Property<DateTime>("SentAt")
.HasColumnType("datetime2");
b.Property<string>("Subject")
.HasMaxLength(150)
.HasColumnType("nvarchar(150)");
b.HasKey("Id");
b.ToTable("ContactMessage");
});
modelBuilder.Entity("RazorPagesMovie.Models.Movie", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
b.Property<string>("Genre")
.IsRequired()
.HasMaxLength(30)
.HasColumnType("nvarchar(30)");
b.Property<decimal>("Price")
.HasColumnType("decimal(18, 2)");
b.Property<string>("Rating")
.IsRequired()
.HasMaxLength(5)
.HasColumnType("nvarchar(5)");
b.Property<DateTime>("ReleaseDate")
.HasColumnType("datetime2");
b.Property<string>("Title")
.IsRequired()
.HasMaxLength(60)
.HasColumnType("nvarchar(60)");
b.HasKey("Id");
b.ToTable("Movie");
});
#pragma warning restore 612, 618
}
}
}
@@ -0,0 +1,99 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace RazorPagesMovie.Migrations
{
/// <inheritdoc />
public partial class ChangeAdminUserAndContactMessageIdToGuid : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropPrimaryKey(
name: "PK_ContactMessage",
table: "ContactMessage");
migrationBuilder.DropColumn(
name: "Id",
table: "ContactMessage");
migrationBuilder.AddColumn<Guid>(
name: "Id",
table: "ContactMessage",
type: "uniqueidentifier",
nullable: false,
defaultValueSql: "NEWID()");
migrationBuilder.AddPrimaryKey(
name: "PK_ContactMessage",
table: "ContactMessage",
column: "Id");
migrationBuilder.DropPrimaryKey(
name: "PK_AdminUser",
table: "AdminUser");
migrationBuilder.DropColumn(
name: "Id",
table: "AdminUser");
migrationBuilder.AddColumn<Guid>(
name: "Id",
table: "AdminUser",
type: "uniqueidentifier",
nullable: false,
defaultValueSql: "NEWID()");
migrationBuilder.AddPrimaryKey(
name: "PK_AdminUser",
table: "AdminUser",
column: "Id");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropPrimaryKey(
name: "PK_ContactMessage",
table: "ContactMessage");
migrationBuilder.DropColumn(
name: "Id",
table: "ContactMessage");
migrationBuilder.AddColumn<int>(
name: "Id",
table: "ContactMessage",
type: "int",
nullable: false)
.Annotation("SqlServer:Identity", "1, 1");
migrationBuilder.AddPrimaryKey(
name: "PK_ContactMessage",
table: "ContactMessage",
column: "Id");
migrationBuilder.DropPrimaryKey(
name: "PK_AdminUser",
table: "AdminUser");
migrationBuilder.DropColumn(
name: "Id",
table: "AdminUser");
migrationBuilder.AddColumn<int>(
name: "Id",
table: "AdminUser",
type: "int",
nullable: false)
.Annotation("SqlServer:Identity", "1, 1");
migrationBuilder.AddPrimaryKey(
name: "PK_AdminUser",
table: "AdminUser",
column: "Id");
}
}
}
@@ -24,11 +24,9 @@ namespace RazorPagesMovie.Migrations
modelBuilder.Entity("RazorPagesMovie.Models.AdminUser", b =>
{
b.Property<int>("Id")
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
.HasColumnType("uniqueidentifier");
b.Property<string>("PasswordHash")
.IsRequired()
@@ -46,11 +44,9 @@ namespace RazorPagesMovie.Migrations
modelBuilder.Entity("RazorPagesMovie.Models.ContactMessage", b =>
{
b.Property<int>("Id")
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int");
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
.HasColumnType("uniqueidentifier");
b.Property<string>("Email")
.IsRequired()