Page IsClickable column must be nullable in order to support upgrades, add more defensive logic

This commit is contained in:
Shaun Walker
2021-06-24 07:41:34 -04:00
parent bfafffd8cb
commit 8e7b553ca8
6 changed files with 56 additions and 34 deletions

View File

@ -45,9 +45,9 @@ namespace Oqtane.Migrations.EntityBuilders
return ActiveDatabase.AddAutoIncrementColumn(table, RewriteName(name));
}
public void AddBooleanColumn(string name)
public void AddBooleanColumn(string name, bool nullable = false)
{
_migrationBuilder.AddColumn<bool>(RewriteName(name), RewriteName(EntityTableName));
_migrationBuilder.AddColumn<bool>(RewriteName(name), RewriteName(EntityTableName), nullable: nullable);
}
protected OperationBuilder<AddColumnOperation> AddBooleanColumn(ColumnsBuilder table, string name, bool nullable = false)
@ -85,7 +85,7 @@ namespace Oqtane.Migrations.EntityBuilders
return table.Column<int>(name: RewriteName(name), nullable: nullable);
}
public void AddMaxStringColumn(string name, int length, bool nullable = false, bool unicode = true)
public void AddMaxStringColumn(string name, bool nullable = false, bool unicode = true)
{
_migrationBuilder.AddColumn<string>(RewriteName(name), RewriteName(EntityTableName), nullable: nullable, unicode: unicode);
}

View File

@ -7,7 +7,7 @@ using Oqtane.Repository;
namespace Oqtane.Migrations.Tenant
{
[DbContext(typeof(TenantDBContext))]
[Migration("Tenant.02.01.01.00")]
[Migration("Tenant.02.02.00.01")]
public class AddPageIsClickable : MultiDatabaseMigration
{
public AddPageIsClickable(IDatabase database) : base(database)
@ -18,7 +18,7 @@ namespace Oqtane.Migrations.Tenant
{
var pageEntityBuilder = new PageEntityBuilder(migrationBuilder, ActiveDatabase);
pageEntityBuilder.AddBooleanColumn("IsClickable");
pageEntityBuilder.AddBooleanColumn("IsClickable", true);
pageEntityBuilder.UpdateColumn("IsClickable", "1");
}