Миграция ASP.NET MVC MySql db в PLESK - PullRequest
1 голос
/ 19 мая 2019

Я опубликовал свой проект Asp.NET в Plesk, он был успешно выполнен.Теперь мне нужно обновить базу данных с помощью PM, но она создает таблицу для «ASPNETROLES», а затем выдает исключение.

Указанный ключ был слишком длинным;максимальная длина ключа составляет 767 байт

Я нашел следующие решения, но ни одно из них не сработало:

https://bugs.mysql.com/bug.php?id=81817

Указанный ключ был слишком длинным;максимальная длина ключа составляет 767 байт. Mysql ошибка в Entity Framework 6

Я пробовал следующий код, но не смог:

[DbConfigurationType(typeof(MySqlEFConfiguration))]
public class AppIdentityDbContext : IdentityDbContext<ApplicationUser>
{
    public AppIdentityDbContext() : base("myConnection")
    {

    }
    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder);
        modelBuilder.Entity<HistoryRow>().HasKey<string>(h => h.MigrationId);
        modelBuilder.Entity<HistoryRow>().Property(h => h.MigrationId).HasMaxLength(100).IsRequired();
        modelBuilder.Entity<HistoryRow>().Property(h => h.ContextKey).HasMaxLength(200).IsRequired();
        modelBuilder.Entity<ApplicationUser>().Property(u => u.Id).HasMaxLength(128);
        modelBuilder.Entity<ApplicationUser>().Property(u => u.UserName).HasMaxLength(128);
        modelBuilder.Entity<ApplicationUser>().Property(u => u.Email).HasMaxLength(128);
        modelBuilder.Entity<IdentityRole>().Property(r => r.Name).HasMaxLength(128);

}

При создании всех таблиц ASPNET следует также установить основнойключ к автоматическому приращению.

Может, кто-нибудь поделится руководством по развертыванию в Plesk?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...