36 lines
1.1 KiB
C#
36 lines
1.1 KiB
C#
using Microsoft.EntityFrameworkCore.Migrations;
|
|
|
|
#nullable disable
|
|
|
|
namespace WebDoorCreator.Data.Migrations.WDCData
|
|
{
|
|
public partial class UserAndOrderStatusViews : Migration
|
|
{
|
|
protected override void Up(MigrationBuilder migrationBuilder)
|
|
{
|
|
// aggiunta views
|
|
addView(migrationBuilder, "UserView");
|
|
addView(migrationBuilder, "OrderStatusView");
|
|
}
|
|
|
|
protected override void Down(MigrationBuilder migrationBuilder)
|
|
{
|
|
// rimozione views
|
|
remView(migrationBuilder, "UserView");
|
|
remView(migrationBuilder, "OrderStatusView");
|
|
}
|
|
|
|
private void addView(MigrationBuilder migrationBuilder, string viewName)
|
|
{
|
|
string path = Path.Combine("SqlScripts", "View", $"{viewName}.sql");
|
|
string viewBody = File.ReadAllText(path);
|
|
migrationBuilder.Sql(viewBody);
|
|
}
|
|
|
|
private void remView(MigrationBuilder migrationBuilder, string viewName)
|
|
{
|
|
migrationBuilder.Sql($"exec('drop view dbo.{viewName}');");
|
|
}
|
|
}
|
|
}
|