gpt4 book ai didi

entity-framework-4 - Entity Framework 代码优先 - 将具有另一个类的 List<> 的类映射到多个表?

转载 作者:行者123 更新时间:2023-12-01 06:46:38 25 4
gpt4 key购买 nike

我正在评估 EF4 并且有一个非常基本的问题......我想,我似乎无法找到答案......

以下面的例子为例:

public class Question
{
public string question {get;set;}
public string answer {get; set;}
}

public class Person
{
public string Id {get; set;}
public string Name {get; set;}
public List<Question> Questions {get; set;}
}

然后我在数据库中有以下表
Person
(
id,
name
)

Question
(
id,
personId,
question,
answer,
)

我可以先使用 EF4 代码将 Person 类映射到两个表,还是我必须重新构造我的 POCO 的第一个,以便问题类包含 id 和 personId - 这不是我想做的事情。

我可以在 OnModelCreating 中添加一些东西来映射我需要映射的类吗?

谢谢!

最佳答案

好的,这就是我现在所做的 - 但它需要我重新构建我的问题类......

public class Question
{
public int Id {get;set;} /* New */
public int PersonId {get;set;} /* New */
public string question {get;set;}
public string answer {get; set;}

public virtual Person PersonObj {get;set;}
}

public class Person
{
public string Id {get; set;}
public string Name {get; set;}
public List<Question> Questions {get; set;}
}

并在 OnModelCreating 事件中添加了以下内容
 modelBuilder.Entity<Person>().
HasMany(d => d.Questions).
WithRequired(c => c.Person).
HasForeignKey(c => c.PersonId).
WillCascadeOnDelete();

不确定它是否完全正确......但现在似乎正在工作。

关于entity-framework-4 - Entity Framework 代码优先 - 将具有另一个类的 List<> 的类映射到多个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4389265/

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