【发布时间】:2021-03-02 09:13:51
【问题描述】:
我有一个数据库优先应用程序,其中的表名称与我的模型不同。我的应用程序使用 fluent API 运行良好,直到我添加了一个与另一个模型具有一对多关系的模型。然后它开始给我错误:
SqliteException: SQLite 错误 1: '没有这样的列:a0.AuthorAuthorId
示例类是:
class Book
{
public int BookId { get; set; }
public string Title { get; set; }
public Author Author {get; set; }
}
class Author
{
public int AuthorId { get; set; }
public string Name { get; set; }
public ICollection<Book> Books { get; set; }
}
我的 OnModelCreating 是 -
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Book>()
.ToTable("tbl_Book")
.HasKey(b => b.BookId);
modelBuilder.Entity<Author>()
.ToTable("tbl_Author")
.HasKey(a => a.AuthorId);
}
我尝试使用.HasOne() 和.WithMany() 来指定表之间的关系。那没用。
【问题讨论】:
标签: c# entity-framework asp.net-core