Fix model + migration x DB

This commit is contained in:
Samuele Locatelli
2021-09-03 11:49:06 +02:00
parent 4e64ddb80b
commit 5e7d966a93
6 changed files with 422 additions and 46 deletions
+144
View File
@@ -0,0 +1,144 @@
// <auto-generated />
using System;
using MP.FileData;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
namespace MP.FileData.Migrations
{
[DbContext(typeof(MoonPro_ProgContext))]
[Migration("20210903094836_InitDb")]
partial class InitDb
{
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("Relational:Collation", "SQL_Latin1_General_CP1_CI_AS")
.HasAnnotation("Relational:MaxIdentifierLength", 128)
.HasAnnotation("ProductVersion", "5.0.9")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
modelBuilder.Entity("MP.FileData.DatabaseModels.ArticoloModel", b =>
{
b.Property<string>("CodArticolo")
.HasColumnType("nvarchar(450)");
b.Property<string>("DescArticolo")
.HasColumnType("nvarchar(max)");
b.Property<string>("Disegno")
.HasColumnType("nvarchar(max)");
b.Property<string>("Tipo")
.HasColumnType("nvarchar(max)");
b.HasKey("CodArticolo");
b.ToTable("Articoli");
});
modelBuilder.Entity("MP.FileData.DatabaseModels.FileModel", b =>
{
b.Property<int>("FileId")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<bool>("Active")
.HasColumnType("bit");
b.Property<bool>("Changed")
.HasColumnType("bit");
b.Property<string>("CodArticolo")
.HasColumnType("nvarchar(450)");
b.Property<byte[]>("FileContent")
.HasColumnType("varbinary(max)");
b.Property<string>("IdxMacchina")
.HasColumnType("nvarchar(450)");
b.Property<DateTime>("LastCheck")
.HasColumnType("datetime2");
b.Property<DateTime>("LastMod")
.HasColumnType("datetime2");
b.Property<string>("MimeType")
.HasColumnType("nvarchar(max)");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<string>("Path")
.HasColumnType("nvarchar(max)");
b.Property<int>("Rev")
.HasColumnType("int");
b.Property<int>("Size")
.HasColumnType("int");
b.HasKey("FileId");
b.HasIndex("CodArticolo");
b.HasIndex("IdxMacchina");
b.ToTable("Files");
});
modelBuilder.Entity("MP.FileData.DatabaseModels.MacchinaModel", b =>
{
b.Property<string>("IdxMacchina")
.HasColumnType("nvarchar(450)");
b.Property<string>("BasePath")
.HasColumnType("nvarchar(max)");
b.Property<string>("CodMacchina")
.HasColumnType("nvarchar(max)");
b.Property<string>("Descrizione")
.HasColumnType("nvarchar(max)");
b.Property<string>("ImgUrl")
.HasColumnType("nvarchar(max)");
b.Property<string>("Nome")
.HasColumnType("nvarchar(max)");
b.Property<string>("Note")
.HasColumnType("nvarchar(max)");
b.Property<int>("ShowOrder")
.HasColumnType("int");
b.HasKey("IdxMacchina");
b.ToTable("Macchine");
});
modelBuilder.Entity("MP.FileData.DatabaseModels.FileModel", b =>
{
b.HasOne("MP.FileData.DatabaseModels.ArticoloModel", "Articolo")
.WithMany()
.HasForeignKey("CodArticolo");
b.HasOne("MP.FileData.DatabaseModels.MacchinaModel", "Macchina")
.WithMany()
.HasForeignKey("IdxMacchina");
b.Navigation("Articolo");
b.Navigation("Macchina");
});
#pragma warning restore 612, 618
}
}
}
@@ -0,0 +1,101 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
namespace MP.FileData.Migrations
{
public partial class InitDb : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "Articoli",
columns: table => new
{
CodArticolo = table.Column<string>(type: "nvarchar(450)", nullable: false),
DescArticolo = table.Column<string>(type: "nvarchar(max)", nullable: true),
Disegno = table.Column<string>(type: "nvarchar(max)", nullable: true),
Tipo = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Articoli", x => x.CodArticolo);
});
migrationBuilder.CreateTable(
name: "Macchine",
columns: table => new
{
IdxMacchina = table.Column<string>(type: "nvarchar(450)", nullable: false),
CodMacchina = table.Column<string>(type: "nvarchar(max)", nullable: true),
Nome = table.Column<string>(type: "nvarchar(max)", nullable: true),
Descrizione = table.Column<string>(type: "nvarchar(max)", nullable: true),
BasePath = table.Column<string>(type: "nvarchar(max)", nullable: true),
ImgUrl = table.Column<string>(type: "nvarchar(max)", nullable: true),
Note = table.Column<string>(type: "nvarchar(max)", nullable: true),
ShowOrder = table.Column<int>(type: "int", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_Macchine", x => x.IdxMacchina);
});
migrationBuilder.CreateTable(
name: "Files",
columns: table => new
{
FileId = table.Column<int>(type: "int", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Active = table.Column<bool>(type: "bit", nullable: false),
CodArticolo = table.Column<string>(type: "nvarchar(450)", nullable: true),
IdxMacchina = table.Column<string>(type: "nvarchar(450)", nullable: true),
Name = table.Column<string>(type: "nvarchar(max)", nullable: true),
Rev = table.Column<int>(type: "int", nullable: false),
LastMod = table.Column<DateTime>(type: "datetime2", nullable: false),
Size = table.Column<int>(type: "int", nullable: false),
Path = table.Column<string>(type: "nvarchar(max)", nullable: true),
MimeType = table.Column<string>(type: "nvarchar(max)", nullable: true),
Changed = table.Column<bool>(type: "bit", nullable: false),
LastCheck = table.Column<DateTime>(type: "datetime2", nullable: false),
FileContent = table.Column<byte[]>(type: "varbinary(max)", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Files", x => x.FileId);
table.ForeignKey(
name: "FK_Files_Articoli_CodArticolo",
column: x => x.CodArticolo,
principalTable: "Articoli",
principalColumn: "CodArticolo",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_Files_Macchine_IdxMacchina",
column: x => x.IdxMacchina,
principalTable: "Macchine",
principalColumn: "IdxMacchina",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.CreateIndex(
name: "IX_Files_CodArticolo",
table: "Files",
column: "CodArticolo");
migrationBuilder.CreateIndex(
name: "IX_Files_IdxMacchina",
table: "Files",
column: "IdxMacchina");
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "Files");
migrationBuilder.DropTable(
name: "Articoli");
migrationBuilder.DropTable(
name: "Macchine");
}
}
}
@@ -0,0 +1,142 @@
// <auto-generated />
using System;
using MP.FileData;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
namespace MP.FileData.Migrations
{
[DbContext(typeof(MoonPro_ProgContext))]
partial class MoonPro_ProgContextModelSnapshot : ModelSnapshot
{
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("Relational:Collation", "SQL_Latin1_General_CP1_CI_AS")
.HasAnnotation("Relational:MaxIdentifierLength", 128)
.HasAnnotation("ProductVersion", "5.0.9")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
modelBuilder.Entity("MP.FileData.DatabaseModels.ArticoloModel", b =>
{
b.Property<string>("CodArticolo")
.HasColumnType("nvarchar(450)");
b.Property<string>("DescArticolo")
.HasColumnType("nvarchar(max)");
b.Property<string>("Disegno")
.HasColumnType("nvarchar(max)");
b.Property<string>("Tipo")
.HasColumnType("nvarchar(max)");
b.HasKey("CodArticolo");
b.ToTable("Articoli");
});
modelBuilder.Entity("MP.FileData.DatabaseModels.FileModel", b =>
{
b.Property<int>("FileId")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<bool>("Active")
.HasColumnType("bit");
b.Property<bool>("Changed")
.HasColumnType("bit");
b.Property<string>("CodArticolo")
.HasColumnType("nvarchar(450)");
b.Property<byte[]>("FileContent")
.HasColumnType("varbinary(max)");
b.Property<string>("IdxMacchina")
.HasColumnType("nvarchar(450)");
b.Property<DateTime>("LastCheck")
.HasColumnType("datetime2");
b.Property<DateTime>("LastMod")
.HasColumnType("datetime2");
b.Property<string>("MimeType")
.HasColumnType("nvarchar(max)");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<string>("Path")
.HasColumnType("nvarchar(max)");
b.Property<int>("Rev")
.HasColumnType("int");
b.Property<int>("Size")
.HasColumnType("int");
b.HasKey("FileId");
b.HasIndex("CodArticolo");
b.HasIndex("IdxMacchina");
b.ToTable("Files");
});
modelBuilder.Entity("MP.FileData.DatabaseModels.MacchinaModel", b =>
{
b.Property<string>("IdxMacchina")
.HasColumnType("nvarchar(450)");
b.Property<string>("BasePath")
.HasColumnType("nvarchar(max)");
b.Property<string>("CodMacchina")
.HasColumnType("nvarchar(max)");
b.Property<string>("Descrizione")
.HasColumnType("nvarchar(max)");
b.Property<string>("ImgUrl")
.HasColumnType("nvarchar(max)");
b.Property<string>("Nome")
.HasColumnType("nvarchar(max)");
b.Property<string>("Note")
.HasColumnType("nvarchar(max)");
b.Property<int>("ShowOrder")
.HasColumnType("int");
b.HasKey("IdxMacchina");
b.ToTable("Macchine");
});
modelBuilder.Entity("MP.FileData.DatabaseModels.FileModel", b =>
{
b.HasOne("MP.FileData.DatabaseModels.ArticoloModel", "Articolo")
.WithMany()
.HasForeignKey("CodArticolo");
b.HasOne("MP.FileData.DatabaseModels.MacchinaModel", "Macchina")
.WithMany()
.HasForeignKey("IdxMacchina");
b.Navigation("Articolo");
b.Navigation("Macchina");
});
#pragma warning restore 612, 618
}
}
}