我应该在linq-to-sql中选择哪种关系?
Posted
技术标签:
【中文标题】我应该在linq-to-sql中选择哪种关系?【英文标题】:Which relationship should I choose in linq-to-sql? 【发布时间】:2012-01-08 19:13:27 【问题描述】:我需要设置类之间的关系:
头等舱是 Route
。路由有StartStation
(Station
类)和EndStation
(Station
类)。
每个车站都可以是许多路线的起点或终点站。
是one-to-many
关系吗?
如果是,我该如何设置这种关系?
在Station
课程上提供EntitySet<Route>
对我来说毫无意义,但也许我错了?
【问题讨论】:
【参考方案1】:问问自己一个站是否可以有多个路线。如果是这种情况,那么您的关系是多对多的。如果没有,那么您应该为每条路线收集一个站点。
【讨论】:
【参考方案2】:我猜想单个Station
实例会被N 个Route
实例访问,所以Station
-Route
关系是一对多的。
StartStation
和EndStation
将是Station
在不同路线中扮演的角色。每条路线都有一个起点站和一个终点站,所以关系看起来像这样:
以这种方式,我建议您像刚才一样设置属性StartStation
和EndStation
,并且为每个Station
设置一个EntitySet<Route>
实际上是有意义的:是所有路由的集合吗?与 Station
实例相关。
【讨论】:
以上是关于我应该在linq-to-sql中选择哪种关系?的主要内容,如果未能解决你的问题,请参考以下文章