[英]Creating a one to many relationship
我正在尝试在下表之间创建一对多( Project
)对多( ActionLog
)关系:
public class Projects {
[Key]
public int Id { get; set; }
public string Name { get; set; } //I cut out most of the props as they were not relevant
}
//They exist in two different .cs files.
public class ActionLog {
[Key]
public int Id { get; set;}
public string Information {get; set;}
public ProjectsId {get; set;}
}
当前,在我的viewmodel中,我对所有与ProjectTableId
匹配的条目进行linq select,并将其放入每个Project
实例的列表中。
我担心这种方法效率极低,因为它会在数据库中查询项目的每个条目。 我知道在这种情况下,最好使用eager(?)加载,但我不知道如何实现。
传统上,您会拥有许多相关项目的ICollection
:
public class Project
{
...
public virtual ICollection<ActivityLog> ActivityLogs { get; set; }
}
这样,您就可以在查询项目时包括日志:
var projects = db.Projects.Include(m => m.ActivityLogs)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.