【发布时间】:2016-10-12 13:33:02
【问题描述】:
我有一个通用的员工列表,使用 WCF Web 服务获取,还有一个带有费用报告的 SQL 表。我有一个包含费用报告列表的索引页面,我想在列表中显示员工姓名,但员工姓名没有存储在费用报告表中,只有员工 ID。通常,我会在员工和费用报告之间使用连接,但我发现我无法将内存数据集(员工)连接到 SQL 数据库调用(费用报告)。我收到有关原始类型的错误。
看来我唯一的选择是先获取所有员工,然后遍历费用报告以查找匹配的员工 ID,或者先获取所有费用报告并遍历它们并获取员工信息。问题是,在某些情况下,等式的每一侧可能有数千行。做任何一个都会非常低效。
所以我的问题是,我是否遗漏了什么,有没有办法有效地将内存数据集加入 SQL 数据库调用,或者是我唯一的选择来非规范化我的数据库并将信息存储在 SQL 表中?
【问题讨论】:
-
您使用的是数据库优先方法吗?还是先有实体框架的代码?
标签: asp.net-mvc linq lambda inner-join