我在C#类上映射不同的表。 即如果我有一个名为“T”的表格,其中包含“A”和“B”列,那么在C#中我会在我的代码中创建类似的内容:
class T{
A{get;set;}
B{get;set;}
}
我的问题在于连接表,在1-1,1-n,n-n关系中表示两个连接表的正确方法是什么?
我没有使用Entity Framework,我也无法使用它。
答案 0 :(得分:2)
我会尝试向您展示一些例子。 首先假设我们有一所学校和学生,让我们说学校有很多学生,一个学生在一所学校 然后你会在课堂上有这样的东西,这将是1-n
int size_row = v2d.size();
int size_col = v2d[0].size();
现在让我们假设一个学生上课,他可以有一个以上,所以它是一个n-n关系:
public class School
{
private string name;
private List<Student> students; // which is the list of the student
}
public class Student
{
private string name;
private School school; //which represent the school of the student
}
基本上对于1-1你不代表它,因为在数据库中当你有1-1时,这种关系是没用的,你将两个表合并成一个。
希望有所帮助
编辑: 有时在你的班级中建立1-1关系似乎很有用。 所以,让我们以汽车和发动机为例。
public class Student
{
private string name;
private School school; //which represent the school of the student
private List<Class> classes; //Represent all the class he attends
}
public class Class
{
private string name;
private List<Student> students; //Represent all the students attending the class
}
在这种情况下,它对于代码的清晰度是有用的。 感谢Corak