我应该在linq-to-sql中选择哪种关系?

Posted

技术标签:

【中文标题】我应该在linq-to-sql中选择哪种关系?【英文标题】:Which relationship should I choose in linq-to-sql? 【发布时间】:2012-01-08 19:13:27 【问题描述】:

我需要设置类之间的关系:

头等舱是 Route 。路由有StartStationStation 类)和EndStationStation 类)。

每个车站都可以是许多路线的起点或终点站。

one-to-many 关系吗?

如果是,我该如何设置这种关系?

Station 课程上提供EntitySet<Route> 对我来说毫无意义,但也许我错了?

【问题讨论】:

【参考方案1】:

问问自己一个站是否可以有多个路线。如果是这种情况,那么您的关系是多对多的。如果没有,那么您应该为每条路线收集一个站点。

【讨论】:

【参考方案2】:

我猜想单个Station 实例会被N 个Route 实例访问,所以Station-Route 关系是一对多的。

StartStationEndStation 将是Station 在不同路线中扮演的角色。每条路线都有一个起点站和一个终点站,所以关系看起来像这样:

以这种方式,我建议您像刚才一样设置属性StartStationEndStation,并且为每个Station 设置一个EntitySet<Route> 实际上是有意义的:是所有路由的集合吗?与 Station 实例相关。

【讨论】:

以上是关于我应该在linq-to-sql中选择哪种关系?的主要内容,如果未能解决你的问题,请参考以下文章

我需要选择哪种关系?

我应该选择哪种布局?

我应该为 HTML 嵌入选择哪种音频格式和哪种压缩方式?

我应该使用(最快)哪种方法来选择元素?

我应该选择哪种加密哈希函数?

我应该选择哪种 ActiveMQ 传输?