fix #2182 - modifications to address MySQL compatibility issues

This commit is contained in:
Shaun Walker
2022-05-08 22:14:26 -04:00
parent b1d6c35e99
commit 345b0bc95f
14 changed files with 41 additions and 31 deletions

View File

@ -23,8 +23,8 @@ namespace Oqtane.Migrations.EntityBuilders
protected override AspNetUserLoginsEntityBuilder BuildTable(ColumnsBuilder table)
{
LoginProvider = AddStringColumn(table, "LoginProvider", 450);
ProviderKey = AddStringColumn(table, "ProviderKey", 450);
LoginProvider = AddStringColumn(table, "LoginProvider", 128);
ProviderKey = AddStringColumn(table, "ProviderKey", 128);
ProviderDisplayName = AddMaxStringColumn(table, "ProviderDisplayName", true);
UserId = AddStringColumn(table, "UserId", 450);
return this;

View File

@ -187,9 +187,20 @@ namespace Oqtane.Migrations.EntityBuilders
return table.Column<decimal>(name: RewriteName(name), nullable: nullable, precision: precision, scale: scale, defaultValue: defaultValue);
}
public void AlterStringColumn(string name, int length, bool nullable = false, bool unicode = true)
public void AlterStringColumn(string name, int length, bool nullable = false, bool unicode = true, string index = "")
{
ActiveDatabase.AlterStringColumn(_migrationBuilder, RewriteName(name), RewriteName(EntityTableName), length, nullable, unicode);
if (index != "")
{
// indexes are in the form IndexName:Column1,Column2:Unique
var elements = index.Split(':');
index = RewriteName(elements[0]) + ":";
foreach (var column in elements[1].Split(','))
{
index += RewriteName(column) + ",";
}
index = index.Substring(0, index.Length - 1) + ":" + elements[2];
}
ActiveDatabase.AlterStringColumn(_migrationBuilder, RewriteName(name), RewriteName(EntityTableName), length, nullable, unicode, index);
}
public void DropColumn(string name)