我尝试使用影子外键建立一对多关系。但它在数据库中创建了一个具有不同命名约定的列。
它将其创建为:
AuthorId
我想要的:
author_id
带 *shadow外键 * 的Book模型:
[Table("books")]
public class Book
{
public Author Author { get; set; }
}
作者模型:
[Table("authors")]
public class Author
{
public ICollection<Book> Books { get; set; }
}
我不想显式添加ForeignKey。有没有办法给予影子属性命名?然后迁移。
2条答案
按热度按时间ikfrs5lh1#
可以使用
.Property<int>("AuthorId")
显式定义shadow属性。然后使用.HasColumnName("author_id")
在数据库中指定所需的列名czq61nw12#
我可以使用FluentAPI实现:
然后我继续迁移,它改变了数据库。