Не могу создать таблицы в postgresql - PullRequest
0 голосов
/ 30 марта 2020

Я вручную удалил две таблицы в pgAdmin и теперь хочу создать их снова. Я внес некоторые изменения, применил миграцию, но эта таблица не была создана. Не могу понять, почему?

Когда я отправляю запрос на добавление элемента в эти таблицы, я получаю сообщение об ошибке: отношение "ProductsComparsion" не существует

enter image description here

public class Product
{
    public int Id { get; set; }
    public ICollection<ProductToCompare> ProductsToCompare { get; set; } //! Added
}
// I want to create tables for two models below
public class ProductComparsion
{
    public int Id { get; set; }
    public int? UserId { get; set; }
    public Guid SessionId { get; set; }
    public int CategoryId { get; set; }
    public DateTime Created { get; set; }
    public ICollection<ProductToCompare> ProductsToCompare { get; set; }
}

public class ProductToCompare
{
    public int ProductComparsionId { get; set; }
    public ProductComparsion ProductComparsion { get; set; }
    public int ProductId { get; set; }
    public Product Product { get; set; }        
}

AppDbContextModelProvider

modelBuilder.Entity<ProductComparsion>(typeBuiler =>
{
    typeBuiler.ToTable(nameof(AppDbContext.ProductsComparsion));
    typeBuiler.HasKey(z => z.Id);
});

modelBuilder.Entity<ProductToCompare>(typeBuilder =>
{
    typeBuilder.HasKey(z => new { z.ProductId, z.ProductComparsionId });
    typeBuilder.ToTable(nameof(AppDbContext.ProductsToCompare));                
    typeBuilder.HasOne(z => z.ProductComparsion).WithMany(z => z.ProductsToCompare).HasForeignKey(z => z.ProductComparsionId);  
    typeBuilder.HasOne(z => z.Product).WithMany(z => z.ProductsToCompare).HasForeignKey(z => z.ProductId);
});

enter image description here

...