Связь «Журналы» существует (миграция EF Core/PostgreSQL)C#

Место общения программистов C#
Ответить
Anonymous
 Связь «Журналы» существует (миграция EF Core/PostgreSQL)

Сообщение Anonymous »

Не понимаю, что здесь происходит. Мой LogEntity, похоже, реализован не иначе, чем мой TenantEntity, и они имеют одинаковую реализацию в моем ApplicationDBContext.
Я пишу код -первая миграция на локально размещенный сервер Postgres с помощью следующих команд:
> dotnet ef migrations add {migrationName}
> dotnet ef database update

который выдает эту ошибку:

отношение «Журналы» не существует
< /blockquote>
Изменить: файл миграции содержит код для создания таблицы журналов, и таблица журналов ДЕЙСТВИТЕЛЬНО создается, но команда для запуска миграции выдает эту ошибку примерно 20-30 раз, прежде чем таблицы получат создано.
InitialCreate:
public partial class InitialCreate : Migration
{
///
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "Logs",
columns: table => new
{
Id = table.Column(type: "text", nullable: false),
Message = table.Column(type: "text", nullable: false),
Date = table.Column(type: "timestamp without time zone", nullable: false),
LogLevel = table.Column(type: "integer", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_Logs", x => x.Id);
});

migrationBuilder.CreateTable(
name: "Tenants",
columns: table => new
{
Id = table.Column(type: "text", nullable: false),
Name = table.Column(type: "text", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Tenants", x => x.Id);
});
}

///
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "Logs");

migrationBuilder.DropTable(
name: "Tenants");
}
}

ApplicationDBContext:
internal class ApplicationDBContext : DbContext
{
public ApplicationDBContext(DbContextOptions dbContextOptions)
: base(dbContextOptions)
{
}

public DbSet Logs { get; set; }
public DbSet Tenants { get; set; }

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
new LogEntityConfiguration().Configure(modelBuilder.Entity());
new TenantEntityConfiguration().Configure(modelBuilder.Entity());
}
}

Конфигурации объектов:
internal class TenantEntityConfiguration : IEntityTypeConfiguration
{
public void Configure(EntityTypeBuilder builder)
{
builder.HasKey(e => e.Id);
}
}

internal class LogEntityConfiguration : IEntityTypeConfiguration
{
public void Configure(EntityTypeBuilder builder)
{
builder.HasKey(e => e.Id);
}
}

Классы сущностей:
public class LogEntity
{
public string Id { get; set; }
public string Message { get; set; }
public DateTime Date { get; set; }
public int LogLevel { get; set; }
}

public class TenantEntity
{
public string? Id { get; set; }
public string? Name { get; set; }
}


Подробнее здесь: https://stackoverflow.com/questions/792 ... -migration
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»