Я использую FluentNhibernate для моего приложения C#, я хотел бы знать, как присоединиться к трем таблицам, которые не имеют внешних ключей. Давайте предположим, у меня есть следующую структуру таблицы,Как присоединиться к трем таблицам с использованием FluentNhibernate
Student [StudentID, NAME1 NAME2, ClassID]
Класс [ClassID, Имя, SchoolID]
школа [SchoolID, SchoolName]
мне нужно присоединиться к выше трех таблиц, как это
SELECT a.Name1,a.Name2,b.Name,c.SchoolName FROM Student a, Class b, School c WHERE a.ClassID = b.ClassID AND b.SchoolID = c.SchoolID
Я имею следующую структуру класса для ORM
public class Student
{
public virtual int StudentID { get; set; }
public virtual string Name1 { get; set; }
public virtual string Name2 { get; set; }
public virtual int ClassID { get; set; }
}
public class StudentMap : ClassMap<Student>
{
public StudentMap()
{
Id(x => x.StudentID).Column("student_id");
Map(x => x.Name1).Column("name_1");
Map(x => x.Name1).Column("name_2");
Map(x => x.ClassID).Column("class_Id");
Table("student");
}
}
public class Classt
{
public virtual int ClassID { get; set; }
public virtual string Name { get; set; }
public virtual int SchoolID { get; set; }
}
public class ClassMap : ClassMap<Class>
{
public ClassMap()
{
Id(x => x.ClassID).Column("class_id");
Map(x => x.Name).Column("name");
Map(x => x.SchoolID).Column("school_Id");
Table("class");
}
}
public class School
{
public virtual int SchooID { get; set; }
public virtual string Name { get; set; }
}
public class SchoolMap : ClassMap<School>
{
public SchoolMap()
{
Id(x => x.ClassID).Column("class_id");
Map(x => x.Name).Column("name");
Table("school");
}
}
Почему у вас нет реальности между вашими сущностями? зачем использовать ORM, если не будет использовать какое-либо отношение между объектами. – Mert