From b410d4dd0cdb48dbe554bfe5d4de981746f9174f Mon Sep 17 00:00:00 2001 From: "zaccaria.majid" Date: Tue, 4 Apr 2023 11:07:16 +0200 Subject: [PATCH] aggiunto modello lingue --- WebDoorCreator.Data/DbModels/LanguageModel.cs | 33 + WebDoorCreator.Data/LanguageConfiguration.cs | 38 + ...20230404072710_AddLanguagePack.Designer.cs | 791 ++++++++++++++++++ .../WDCData/20230404072710_AddLanguagePack.cs | 40 + .../WDCData/WDCDataContextModelSnapshot.cs | 28 + WebDoorCreator.Data/WDCDataContext.cs | 7 +- 6 files changed, 934 insertions(+), 3 deletions(-) create mode 100644 WebDoorCreator.Data/DbModels/LanguageModel.cs create mode 100644 WebDoorCreator.Data/LanguageConfiguration.cs create mode 100644 WebDoorCreator.Data/Migrations/WDCData/20230404072710_AddLanguagePack.Designer.cs create mode 100644 WebDoorCreator.Data/Migrations/WDCData/20230404072710_AddLanguagePack.cs diff --git a/WebDoorCreator.Data/DbModels/LanguageModel.cs b/WebDoorCreator.Data/DbModels/LanguageModel.cs new file mode 100644 index 0000000..d6d3f9d --- /dev/null +++ b/WebDoorCreator.Data/DbModels/LanguageModel.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using static WebDoorCreator.Core.Enum; + +// +// This is here so CodeMaid doesn't reorganize this document +// +namespace WebDoorCreator.Data.DbModels +{ + /// + /// Lingue conosciute per il programma + /// + [Table("Languages")] + public class LanguageModel + { + /// + /// codice lingua + /// + [Key, MaxLength(5)] + public string CodLingua { get; set; } = ""; + + /// + /// Descrizione della lingua (Lingua per esteso) + /// + [MaxLength(50)] + public string DescrizioneLingua { get; set; } = ""; + } +} diff --git a/WebDoorCreator.Data/LanguageConfiguration.cs b/WebDoorCreator.Data/LanguageConfiguration.cs new file mode 100644 index 0000000..6cb29af --- /dev/null +++ b/WebDoorCreator.Data/LanguageConfiguration.cs @@ -0,0 +1,38 @@ +using Microsoft.AspNetCore.Identity; +using Microsoft.EntityFrameworkCore.Metadata.Builders; +using Microsoft.EntityFrameworkCore; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using WebDoorCreator.Data.DbModels; +using Org.BouncyCastle.Utilities.Collections; + +namespace WebDoorCreator.Data +{ + public class LanguageConfiguration : IEntityTypeConfiguration + { + #region Public Methods + + public void Configure(EntityTypeBuilder builder) + { + builder.HasData( + getNewLang("EN", "English"), + getNewLang("IT", "Italiano") + ); + } + + #endregion Public Methods + + protected LanguageModel getNewLang(string codeLang, string descLang) + { + var newRec = new LanguageModel + { + CodLingua = codeLang, + DescrizioneLingua = descLang + }; + return newRec; + } + } +} diff --git a/WebDoorCreator.Data/Migrations/WDCData/20230404072710_AddLanguagePack.Designer.cs b/WebDoorCreator.Data/Migrations/WDCData/20230404072710_AddLanguagePack.Designer.cs new file mode 100644 index 0000000..231133a --- /dev/null +++ b/WebDoorCreator.Data/Migrations/WDCData/20230404072710_AddLanguagePack.Designer.cs @@ -0,0 +1,791 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using WebDoorCreator.Data; + +#nullable disable + +namespace WebDoorCreator.Data.Migrations.WDCData +{ + [DbContext(typeof(WDCDataContext))] + [Migration("20230404072710_AddLanguagePack")] + partial class AddLanguagePack + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("Latin1_General_CI_AS") + .HasAnnotation("ProductVersion", "6.0.14") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.AspNetRoles", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("nvarchar(450)"); + + b.Property("ConcurrencyStamp") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Name") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("NormalizedName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("AspNetRoles", null, t => t.ExcludeFromMigrations()); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.AspNetUserRoles", b => + { + b.Property("UserId") + .HasColumnType("nvarchar(450)"); + + b.Property("RoleId") + .HasColumnType("nvarchar(450)"); + + b.HasKey("UserId", "RoleId"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetUserRoles", null, t => t.ExcludeFromMigrations()); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.AspNetUsers", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("nvarchar(450)"); + + b.Property("AccessFailedCount") + .HasColumnType("int"); + + b.Property("ConcurrencyStamp") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Email") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("EmailConfirmed") + .HasColumnType("bit"); + + b.Property("LockoutEnabled") + .HasColumnType("bit"); + + b.Property("LockoutEnd") + .HasColumnType("datetimeoffset"); + + b.Property("NormalizedEmail") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("NormalizedUserName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("PasswordHash") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("PhoneNumber") + .HasColumnType("nvarchar(max)"); + + b.Property("PhoneNumberConfirmed") + .HasColumnType("bit"); + + b.Property("SecurityStamp") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("TwoFactorEnabled") + .HasColumnType("bit"); + + b.Property("UserName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.ToTable("AspNetUsers", null, t => t.ExcludeFromMigrations()); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.CompanyModel", b => + { + b.Property("CompanyId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("CompanyId"), 1L, 1); + + b.Property("Address") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("nvarchar(250)"); + + b.Property("City") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CompanyExtCode") + .IsRequired() + .HasMaxLength(250) + .HasColumnType("nvarchar(250)"); + + b.Property("CompanyName") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("nvarchar(500)"); + + b.Property("CompanyToken") + .IsRequired() + .HasMaxLength(150) + .HasColumnType("nvarchar(150)"); + + b.Property("PrivateNote") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("nvarchar(500)"); + + b.Property("State") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("VAT") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ZipCode") + .HasColumnType("int"); + + b.HasKey("CompanyId"); + + b.ToTable("Company"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorModel", b => + { + b.Property("DoorId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("DoorId"), 1L, 1); + + b.Property("DateIns") + .HasColumnType("datetime2"); + + b.Property("DateLockExpiry") + .HasColumnType("datetime2"); + + b.Property("DateMod") + .HasColumnType("datetime2"); + + b.Property("DoorDescript") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("DoorExtCode") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("MeasureUnit") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("OrderId") + .HasColumnType("int"); + + b.Property("Quantity") + .HasColumnType("int"); + + b.Property("TypeId") + .HasColumnType("int"); + + b.Property("UnitCost") + .HasColumnType("decimal(18,2)"); + + b.Property("UserIdIns") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("UserIdLock") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("UserIdMod") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("DoorId"); + + b.HasIndex("OrderId"); + + b.HasIndex("TypeId"); + + b.ToTable("Door"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorOpModel", b => + { + b.Property("DoorOpId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("DoorOpId"), 1L, 1); + + b.Property("DateIns") + .HasColumnType("datetime2"); + + b.Property("DateMod") + .HasColumnType("datetime2"); + + b.Property("Description") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("DoorId") + .HasColumnType("int"); + + b.Property("DoorOpTypId") + .HasColumnType("int"); + + b.Property("JsoncConfigVal") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("UserIdIns") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("UserIdMod") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("DoorOpId"); + + b.HasIndex("DoorId"); + + b.HasIndex("DoorOpTypId"); + + b.ToTable("DoorOp"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorOpTypeModel", b => + { + b.Property("DoorOpTypId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("DoorOpTypId"), 1L, 1); + + b.Property("Description") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("DisplayUrl") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("DoorOpIdPathFromPatriarch") + .HasColumnType("hierarchyid"); + + b.Property("ExtDescript") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("ExtOpCode") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("FPath") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("HasHw") + .HasColumnType("bit"); + + b.Property("HwCode") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("HwDescription") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("IsConcrete") + .HasColumnType("bit"); + + b.Property("IsDefault") + .HasColumnType("bit"); + + b.Property("JsoncConfig") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("MaxAllowed") + .HasColumnType("int"); + + b.Property("OpCode") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("ParentDoorOpId") + .HasColumnType("int"); + + b.Property("Rev") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("ValidFrom") + .HasColumnType("datetime2"); + + b.Property("ValidUntil") + .HasColumnType("datetime2"); + + b.HasKey("DoorOpTypId"); + + b.ToTable("DoorOpType"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorTypeModel", b => + { + b.Property("TypeId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("TypeId"), 1L, 1); + + b.Property("Description") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("TypeCode") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("TypeId"); + + b.ToTable("DoorType"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.GraphicParamsModel", b => + { + b.Property("GraphicParamId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("GraphicParamId"), 1L, 1); + + b.Property("compoId") + .HasColumnType("int"); + + b.Property("graphicParamAlias") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("graphicParamDefaultVal") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("graphicParamKey") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("graphicParamName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("graphicParamType") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("graphicParamsN") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("GraphicParamId"); + + b.ToTable("GraphicParams"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.HardwareModel", b => + { + b.Property("HardwareId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("HardwareId"), 1L, 1); + + b.Property("compoAlias") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("compoLayerName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("compoName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("compoTemplateIsActive") + .HasColumnType("bit"); + + b.HasKey("HardwareId"); + + b.ToTable("Hardware"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.LanguageModel", b => + { + b.Property("CodLingua") + .HasMaxLength(5) + .HasColumnType("nvarchar(5)"); + + b.Property("DescrizioneLingua") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.HasKey("CodLingua"); + + b.ToTable("Languages"); + + b.HasData( + new + { + CodLingua = "EN", + DescrizioneLingua = "English" + }, + new + { + CodLingua = "IT", + DescrizioneLingua = "Italiano" + }); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.ListValuesModel", b => + { + b.Property("TableName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("FieldName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("value") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("label") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ordinal") + .HasColumnType("int"); + + b.HasKey("TableName", "FieldName", "value"); + + b.ToTable("ListValues"); + + b.HasData( + new + { + TableName = "Opening", + FieldName = "Swing", + value = "LH", + label = "Left Handed", + ordinal = 1 + }, + new + { + TableName = "Opening", + FieldName = "Swing", + value = "RH", + label = "Right Handed", + ordinal = 2 + }, + new + { + TableName = "Opening", + FieldName = "Swing", + value = "LHR", + label = "Left Handed Reverse", + ordinal = 3 + }, + new + { + TableName = "Opening", + FieldName = "Swing", + value = "RHR", + label = "Right Handed Reverse", + ordinal = 4 + }, + new + { + TableName = "Edges", + FieldName = "EdgeType", + value = "BV", + label = "Bevel", + ordinal = 1 + }, + new + { + TableName = "Edges", + FieldName = "EdgeType", + value = "SQ", + label = "Squared", + ordinal = 2 + }, + new + { + TableName = "Edges", + FieldName = "EdgeType", + value = "1B", + label = "Bull Nose 1", + ordinal = 3 + }); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.OrderModel", b => + { + b.Property("OrderId") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("OrderId"), 1L, 1); + + b.Property("CompanyId") + .HasColumnType("int"); + + b.Property("DateIns") + .HasColumnType("datetime2"); + + b.Property("DateMod") + .HasColumnType("datetime2"); + + b.Property("OrderDescript") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("OrderExtCode") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Status") + .HasColumnType("int"); + + b.Property("UserIdIns") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("UserIdMod") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("OrderId"); + + b.HasIndex("CompanyId"); + + b.ToTable("Order"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.OrderStatusViewModel", b => + { + b.Property("OrderId") + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("OrderId"), 1L, 1); + + b.Property("CompanyId") + .HasColumnType("int"); + + b.Property("DateIns") + .HasColumnType("datetime2"); + + b.Property("NumDoors") + .HasColumnType("int"); + + b.Property("NumType") + .HasColumnType("int"); + + b.Property("OrderDescript") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("OrderExtCode") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("OrderStatus") + .HasColumnType("int"); + + b.Property("TotCost") + .HasColumnType("decimal(18,2)"); + + b.Property("UserIdIns") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("UserIdMod") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("OrderId"); + + b.ToView("OrderStatusViewModel"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.UsersViewModel", b => + { + b.Property("UserId") + .HasColumnType("nvarchar(450)"); + + b.Property("RoleId") + .HasColumnType("nvarchar(450)"); + + b.Property("Email") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("RoleName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("UserName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.HasKey("UserId", "RoleId"); + + b.ToView("UsersViewModel"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.VocabularyModel", b => + { + b.Property("Lingua") + .HasMaxLength(5) + .HasColumnType("nvarchar(5)"); + + b.Property("Lemma") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Traduzione") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("nvarchar(500)"); + + b.HasKey("Lingua", "Lemma"); + + b.ToTable("Vocabulary"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.VocabularyTempModel", b => + { + b.Property("Lingua") + .HasMaxLength(5) + .HasColumnType("nvarchar(5)"); + + b.Property("Lemma") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Traduzione") + .IsRequired() + .HasMaxLength(500) + .HasColumnType("nvarchar(500)"); + + b.HasKey("Lingua", "Lemma"); + + b.ToTable("VocabularyTemp"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.AspNetUserRoles", b => + { + b.HasOne("WebDoorCreator.Data.DbModels.AspNetRoles", "RolesNav") + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("WebDoorCreator.Data.DbModels.AspNetUsers", "UsersNav") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("RolesNav"); + + b.Navigation("UsersNav"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorModel", b => + { + b.HasOne("WebDoorCreator.Data.DbModels.OrderModel", "OrderNav") + .WithMany() + .HasForeignKey("OrderId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("WebDoorCreator.Data.DbModels.DoorTypeModel", "TypeNav") + .WithMany() + .HasForeignKey("TypeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("OrderNav"); + + b.Navigation("TypeNav"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.DoorOpModel", b => + { + b.HasOne("WebDoorCreator.Data.DbModels.DoorModel", "DoorNav") + .WithMany() + .HasForeignKey("DoorId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("WebDoorCreator.Data.DbModels.DoorOpTypeModel", "DoorOpTypeNav") + .WithMany() + .HasForeignKey("DoorOpTypId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("DoorNav"); + + b.Navigation("DoorOpTypeNav"); + }); + + modelBuilder.Entity("WebDoorCreator.Data.DbModels.OrderModel", b => + { + b.HasOne("WebDoorCreator.Data.DbModels.CompanyModel", "CompanyNav") + .WithMany() + .HasForeignKey("CompanyId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CompanyNav"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/WebDoorCreator.Data/Migrations/WDCData/20230404072710_AddLanguagePack.cs b/WebDoorCreator.Data/Migrations/WDCData/20230404072710_AddLanguagePack.cs new file mode 100644 index 0000000..8844c45 --- /dev/null +++ b/WebDoorCreator.Data/Migrations/WDCData/20230404072710_AddLanguagePack.cs @@ -0,0 +1,40 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace WebDoorCreator.Data.Migrations.WDCData +{ + public partial class AddLanguagePack : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "Languages", + columns: table => new + { + CodLingua = table.Column(type: "nvarchar(5)", maxLength: 5, nullable: false), + DescrizioneLingua = table.Column(type: "nvarchar(50)", maxLength: 50, nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Languages", x => x.CodLingua); + }); + + migrationBuilder.InsertData( + table: "Languages", + columns: new[] { "CodLingua", "DescrizioneLingua" }, + values: new object[] { "EN", "English" }); + + migrationBuilder.InsertData( + table: "Languages", + columns: new[] { "CodLingua", "DescrizioneLingua" }, + values: new object[] { "IT", "Italiano" }); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "Languages"); + } + } +} diff --git a/WebDoorCreator.Data/Migrations/WDCData/WDCDataContextModelSnapshot.cs b/WebDoorCreator.Data/Migrations/WDCData/WDCDataContextModelSnapshot.cs index 7ecdb15..9e72436 100644 --- a/WebDoorCreator.Data/Migrations/WDCData/WDCDataContextModelSnapshot.cs +++ b/WebDoorCreator.Data/Migrations/WDCData/WDCDataContextModelSnapshot.cs @@ -450,6 +450,34 @@ namespace WebDoorCreator.Data.Migrations.WDCData b.ToTable("Hardware"); }); + modelBuilder.Entity("WebDoorCreator.Data.DbModels.LanguageModel", b => + { + b.Property("CodLingua") + .HasMaxLength(5) + .HasColumnType("nvarchar(5)"); + + b.Property("DescrizioneLingua") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.HasKey("CodLingua"); + + b.ToTable("Languages"); + + b.HasData( + new + { + CodLingua = "EN", + DescrizioneLingua = "English" + }, + new + { + CodLingua = "IT", + DescrizioneLingua = "Italiano" + }); + }); + modelBuilder.Entity("WebDoorCreator.Data.DbModels.ListValuesModel", b => { b.Property("TableName") diff --git a/WebDoorCreator.Data/WDCDataContext.cs b/WebDoorCreator.Data/WDCDataContext.cs index d28efd3..c448ca8 100644 --- a/WebDoorCreator.Data/WDCDataContext.cs +++ b/WebDoorCreator.Data/WDCDataContext.cs @@ -73,6 +73,7 @@ namespace WebDoorCreator.Data public virtual DbSet DbSetGraphicParams { get; set; } = null!; public virtual DbSet DbSetVocabulary { get; set; } = null!; public virtual DbSet DbSetVocabularyTemp { get; set; } = null!; + public virtual DbSet DbSetLanguages { get; set; } = null!; #endregion Public Properties @@ -112,7 +113,7 @@ namespace WebDoorCreator.Data } else { - optionsBuilder.UseSqlServer("Server=SQL2016DEV;Database=WebDoorCreator;Trusted_Connection=True;", e=>e.UseHierarchyId()); + optionsBuilder.UseSqlServer("Server=SQL2016DEV;Database=WebDoorCreator;Trusted_Connection=True;", e => e.UseHierarchyId()); } } } @@ -157,10 +158,10 @@ namespace WebDoorCreator.Data if (!disableMigrate) { modelBuilder.ApplyConfiguration(new ListValuesConfiguration()); + modelBuilder.ApplyConfiguration(new LanguageConfiguration()); - //modelBuilder.ApplyConfiguration(new RoleConfiguration()); - //modelBuilder.Seed(); } + //modelBuilder.Seed(); OnModelCreatingPartial(modelBuilder); }