gpt4 book ai didi

c# - 如何在播种过程中将 en 实体 ID 传递给另一个实体?

转载 作者:太空宇宙 更新时间:2023-11-03 15:53:40 26 4
gpt4 key购买 nike

我有这门课:

public class Reservation
{
public int ID { get; set; }
public int SpaceNumber { get; set; }
public string UserName{ get; set; }

public virtual Game Game { get; set; }

public Reservation() { }
}

我正在尝试设置一些种子,但不确定如何将 GameID 传递给它。这是一个例子:

public class TTUInitializer : System.Data.Entity.DropCreateDatabaseIfModelChanges<TTUContext>
{
protected override void Seed(TTUContext context)
{
var reservation = new List<Reservation>
{
new Reservation{SpaceNumber=123, UserName="username", Game_ID=1},
new Reservation{SpaceNumber=124, UserName="username", Game_ID=1},
};
reservation.ForEach(r => context.Reservations.Add(r));
context.SaveChanges();
}
}

Game_ID 是数据库列的名称 - 但当我尝试将其添加为属性时,迁移生成了一个新的(第二个)Game_ID1 列。播种什么才是正确的?

最佳答案

您需要检索 Game 实例并将 Game 属性设置为该实例。 Game_ID 是用于保存对游戏 ID 的引用的字段,但这是 Entity Framework ,它处理实体,而不是 ID。它意味着一种抽象,因此如果您需要显式设置引用 ID,则需要破解系统并通过 ADO.NET 进行设置。

关于c# - 如何在播种过程中将 en 实体 ID 传递给另一个实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24706791/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com