繁体   English   中英

在 ASP.NET MVC 4 中关联 2 个表(一对多)

[英]Relating 2 tables (one-to-many) in ASP.NET MVC 4

我有一个 ASP.NET MVC 4 项目,其中包含一个 SQL 数据库和 2 个相关表。 一张表是“员工”及其信息(即姓名、地址、电话等),另一表是该“员工”完成的预约“访问”(即访问日期、地点等)。 这些表之间的关系当然应该是一对(EMPLOYEE)对多(VISITS)。 也就是说,一个“EMPLOYEE”可以有很多“VISITS”,但每一个“VISIT”只能归于一个“EMPLOYEE”。 我在“EMPLOYEE”表中有一个“EMPLOYEE-ID”,它是主键,一个“VISIT-ID”是主键,还有一个“EMPLOYEE-ID”,它是“VISITS”表中的外键。

现在,我无法弄清楚如何从“EMPLOYEE”表视图的“VISITS”表下动态启动一个新表列,以便将访问归因于所选员工。 在我看来,应该有一个下拉菜单,上面有员工的名字和姓氏或员工的 ID#,这样我就可以在“访问”表中输入新的“访问”时选择员工。 或者在“EMPLOYEE's”视图中的一个地方,我可以在“VISITS”表中开始一个新的“VISIT”,该表将仅归因于该员工。

我还没有找到使用实体框架执行此操作的方法。 我可以让实体打开 2 个视图。 每个表一个,我可以在任一表中输入数据,但“VISITS”表中的数据与“EMPLOYEE”表无关,或者至少它似乎没有任何关联。

如果需要有关我的项目的更多信息,请让我确切地知道需要什么。 任何帮助将不胜感激。 我来自桌面开发背景。

IDE:Visual Studio for Web 2013
模板:ASP.NET MVC 4
数据库:SQL Server 数据库
.NET Framework:我必须以 .NET 4 为目标
语言:C#

这个问题与EF没有任何关系。 EF 是一种数据访问技术,因此您在视图中显示的内容与 EF 无关。 事实上,编写良好的应用程序无论如何都不应该用 EF 对象填充视图。 您通常应该至少映射一次,也可能映射两次,从 EF 到视图模型,中间也可能有一个单独的 DTO。

无论如何,在您看来,您需要通过 EF 从两个表中获取数据。 然后,您将使用父数据填充下拉列表(或类似内容),并将该值填充到子记录的相应字段中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM