从C#中的多个表读取时创建类

时间:2014-07-20 16:21:04

标签: c# sql-server

我在数据库中有名为

的表
Students (StudentId,Name,Address)
Subjects (SubjectId,SubName)
Stud_Subjects (StudentId,SubjectId)

我为学生和主题创建了c#类。我想从Stud_Subjects表中获取数据我是否需要创建另一个名为" Stud_Subject"的类。如何向该类添加属性。

假设我想获取连接这些表的数据,结果应该是这样的。

(StudentId,Name,SubName)

如何将这些结果映射到C#类。我是否必须创建另一个具有上述三个字段的类。

1 个答案:

答案 0 :(得分:1)

两个课程就足够了。一个Student一个用于Subject。看起来Stud_Subjects表适用于"很多很多关系",您可以通过集合实现它。

class Student
{
    public int StudentId { get; set; }
    public string Name { get; set; }
    public string Address { get; set; }

    public List<Subject> Subjects { get; private set; }
}

class Subject
{
    public int SubjectId { get; set; }
    public string SubjectName { get; set; }

    public List<Student> Students { get; private set; }
}
Subjects班级中的

Student集合将包含学生所映射的所有科目,Students班级中的Subject收藏将包含所有映射到当前班级的学生Subject

您还可以考虑将List<T>转换为Dictionary<int, Student>Dictionary<int, Subject>,以便通过Id

轻松访问它们