Tar*_* 77 3 c# entity-framework-core
我正在尝试通过 C# 代码与 Entity Framework Core 连接两个表。
课程有:
public class roll
{
[key]
public int rollId { get; set; }
public List<pieces> pieces { get; set; }
}
public class pieces
{
[Key]
public int pieceId { get; set; }
public int quantity { get; set; }
public decimal price { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在我的中DbContext,我有以下方法:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<roll>()
.HasRequired(m => m.quantity)
.WithMany(m => m.pieces)
.HasForeignKey(m => m.pieceId);
base.OnModelCreating(modelBuilder);
}
Run Code Online (Sandbox Code Playgroud)
HasRequired变成红色并给出以下消息:
EntityTypeBuilder 不包含 HasRequired 的定义。
该项目添加了对 的引用Microsoft.EntityFrameworkCore.Relational。我已经重新编译了解决方案,关闭并打开了 Visual Studio,但我无法解决HasRequired不再显示红色的问题
我的代码有什么问题吗?
您应该更改 .net core EF 的代码,他们只是将HasRequired其删除并替换HasOne为一对一关系和HasMany一对多关系。您还可以添加.IsRequired()所需的关系。祝你好运。
modelBuilder.Entity<roll>()
.HasOne(m => m.quantity).IsRequired()
.WithMany(m => m.pieces)
.HasForeignKey(m => m.pieceId);
Run Code Online (Sandbox Code Playgroud)
您可以在这里找到完整的文档:文档链接
| 归档时间: |
|
| 查看次数: |
5355 次 |
| 最近记录: |