一个我需要帮助的设计问题。最好用一个例子来描述。使用下列领域模型:-学生-注册-课程
其中,学生和课程之间有许多相互关系,通过注册表实现,即注册具有StudentID (FK)和CourseID (FK)。“学生”类和“课程”类都具有一个导航属性,即另一个类的ICollection。
我使用视图模型,并希望简单的CRUD功能,添加,编辑,删除学生和课程。视图模型与它们关联的域模型非常相似。
显示学生的细节是足够简单的,但当涉及到显示学生的课程细节时,以下哪一种设计将是最好的方法?
发布于 2013-12-16 09:45:43
首先,Enrollment不应该是一个域模型。Enrollment只是一个数据库表,它指定了从Student到Course的多到多关系。
我的建议是在List域模型中创建Course的Student,并使用NHibernate或Fluent NHibernate映射Student和Course,然后从映射中创建多到多的关系,您只需从Student实例中检索Course。
此外,在使用映射时,您可以更自由地使用级联操作,而不是在代码中编写一些SQL语句。
https://stackoverflow.com/questions/20607225
复制相似问题