44 lines
2.0 KiB
C#
44 lines
2.0 KiB
C#
using Microsoft.EntityFrameworkCore.Migrations;
|
|
using System;
|
|
|
|
#nullable disable
|
|
|
|
namespace gehGassi.Persistence.Migrations
|
|
{
|
|
/// <inheritdoc />
|
|
public partial class CoinsViews : Migration
|
|
{
|
|
/// <inheritdoc />
|
|
protected override void Up(MigrationBuilder migrationBuilder)
|
|
{
|
|
var viewName = "vw_CoinsPerMonthWithNames";
|
|
var sql = @"SELECT CPM.*,
|
|
CONCAT(AU.FirstName, ' ' , AU.LastName) AS AppUserName, AU.Photo as AppUserPhoto
|
|
FROM CoinsPerMonths CPM
|
|
JOIN AppUsers AU ON AU.Id = CPM.AppUserId";
|
|
|
|
migrationBuilder.Sql($"IF(exists (SELECT 1 FROM sys.views WHERE Name = '{viewName}')) BEGIN DROP VIEW [dbo].[{viewName}] END {Environment.NewLine} GO");
|
|
migrationBuilder.Sql($"CREATE VIEW [dbo].[{viewName}] AS {sql} {Environment.NewLine} GO");
|
|
|
|
viewName = "vw_CoinsPerYearWithNames";
|
|
sql = @"SELECT CPY.*,
|
|
CONCAT(AU.FirstName, ' ' , AU.LastName) AS AppUserName, AU.Photo as AppUserPhoto
|
|
FROM CoinsPerYears CPY
|
|
JOIN AppUsers AU ON AU.Id = CPY.AppUserId";
|
|
|
|
migrationBuilder.Sql($"IF(exists (SELECT 1 FROM sys.views WHERE Name = '{viewName}')) BEGIN DROP VIEW [dbo].[{viewName}] END {Environment.NewLine} GO");
|
|
migrationBuilder.Sql($"CREATE VIEW [dbo].[{viewName}] AS {sql} {Environment.NewLine} GO");
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
protected override void Down(MigrationBuilder migrationBuilder)
|
|
{
|
|
var viewName = "vw_CoinsPerMonthWithNames";
|
|
migrationBuilder.Sql($"IF(exists (SELECT 1 FROM sys.views WHERE Name = '{viewName}')) BEGIN DROP VIEW [dbo].[{viewName}] END {Environment.NewLine} GO");
|
|
|
|
viewName = "vw_CoinsPerYearWithNames";
|
|
migrationBuilder.Sql($"IF(exists (SELECT 1 FROM sys.views WHERE Name = '{viewName}')) BEGIN DROP VIEW [dbo].[{viewName}] END {Environment.NewLine} GO");
|
|
}
|
|
}
|
|
}
|