diff --git a/RazorPagesMovie/Migrations/20260818121135_AddAdminUserAndContactMessage.Designer.cs b/RazorPagesMovie/Migrations/20260818121135_AddAdminUserAndContactMessage.Designer.cs new file mode 100644 index 0000000..9be0719 --- /dev/null +++ b/RazorPagesMovie/Migrations/20260818121135_AddAdminUserAndContactMessage.Designer.cs @@ -0,0 +1,125 @@ +// +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("20260818121135_AddAdminUserAndContactMessage")] + partial class AddAdminUserAndContactMessage + { + /// + 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("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("nvarchar(100)"); + + b.HasKey("Id"); + + b.ToTable("AdminUser"); + }); + + modelBuilder.Entity("RazorPagesMovie.Models.ContactMessage", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("nvarchar(200)"); + + b.Property("Message") + .IsRequired() + .HasMaxLength(4000) + .HasColumnType("nvarchar(4000)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("nvarchar(100)"); + + b.Property("Phone") + .HasMaxLength(30) + .HasColumnType("nvarchar(30)"); + + b.Property("SentAt") + .HasColumnType("datetime2"); + + b.Property("Subject") + .HasMaxLength(150) + .HasColumnType("nvarchar(150)"); + + b.HasKey("Id"); + + b.ToTable("ContactMessage"); + }); + + modelBuilder.Entity("RazorPagesMovie.Models.Movie", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Genre") + .IsRequired() + .HasMaxLength(30) + .HasColumnType("nvarchar(30)"); + + b.Property("Price") + .HasColumnType("decimal(18, 2)"); + + b.Property("Rating") + .IsRequired() + .HasMaxLength(5) + .HasColumnType("nvarchar(5)"); + + b.Property("ReleaseDate") + .HasColumnType("datetime2"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(60) + .HasColumnType("nvarchar(60)"); + + b.HasKey("Id"); + + b.ToTable("Movie"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/RazorPagesMovie/Migrations/20260818121135_AddAdminUserAndContactMessage.cs b/RazorPagesMovie/Migrations/20260818121135_AddAdminUserAndContactMessage.cs new file mode 100644 index 0000000..8a6b8e3 --- /dev/null +++ b/RazorPagesMovie/Migrations/20260818121135_AddAdminUserAndContactMessage.cs @@ -0,0 +1,57 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace RazorPagesMovie.Migrations +{ + /// + public partial class AddAdminUserAndContactMessage : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "AdminUser", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + Username = table.Column(type: "nvarchar(100)", maxLength: 100, nullable: false), + PasswordHash = table.Column(type: "nvarchar(max)", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_AdminUser", x => x.Id); + }); + + migrationBuilder.CreateTable( + name: "ContactMessage", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + Name = table.Column(type: "nvarchar(100)", maxLength: 100, nullable: false), + Email = table.Column(type: "nvarchar(200)", maxLength: 200, nullable: false), + Phone = table.Column(type: "nvarchar(30)", maxLength: 30, nullable: true), + Subject = table.Column(type: "nvarchar(150)", maxLength: 150, nullable: true), + Message = table.Column(type: "nvarchar(4000)", maxLength: 4000, nullable: false), + SentAt = table.Column(type: "datetime2", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_ContactMessage", x => x.Id); + }); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "AdminUser"); + + migrationBuilder.DropTable( + name: "ContactMessage"); + } + } +} diff --git a/RazorPagesMovie/Migrations/RazorPagesMovieContextModelSnapshot.cs b/RazorPagesMovie/Migrations/RazorPagesMovieContextModelSnapshot.cs index d9bd607..a601172 100644 --- a/RazorPagesMovie/Migrations/RazorPagesMovieContextModelSnapshot.cs +++ b/RazorPagesMovie/Migrations/RazorPagesMovieContextModelSnapshot.cs @@ -22,6 +22,67 @@ namespace RazorPagesMovie.Migrations SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + modelBuilder.Entity("RazorPagesMovie.Models.AdminUser", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("nvarchar(100)"); + + b.HasKey("Id"); + + b.ToTable("AdminUser"); + }); + + modelBuilder.Entity("RazorPagesMovie.Models.ContactMessage", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasMaxLength(200) + .HasColumnType("nvarchar(200)"); + + b.Property("Message") + .IsRequired() + .HasMaxLength(4000) + .HasColumnType("nvarchar(4000)"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("nvarchar(100)"); + + b.Property("Phone") + .HasMaxLength(30) + .HasColumnType("nvarchar(30)"); + + b.Property("SentAt") + .HasColumnType("datetime2"); + + b.Property("Subject") + .HasMaxLength(150) + .HasColumnType("nvarchar(150)"); + + b.HasKey("Id"); + + b.ToTable("ContactMessage"); + }); + modelBuilder.Entity("RazorPagesMovie.Models.Movie", b => { b.Property("Id")