EF 或 NHibernate 都可以处理以下情况吗?
- 假设具有表 A 和 B 的数据模型,映射到实体 A* 和 B*
- 实体 A* 包含 0..n 个子实体 B*s
- 表 B 包含表 A 的 id 列的外键
到目前为止,这是 ORM 101,但现在变得更加棘手:
- 必须使用表值函数或存储过程来访问数据库
- 调用任何一个都必须包含两个附加参数
- 例如假设一个整数和一个 datetime2
有没有办法传入两个额外的参数,以便 EF 或 NH 可以将它们依次添加到它为填充对象图而进行的调用中?可以根据需要修改 TVF 或存储过程的输出,所以我认为我问的问题与这篇文章不同,但可能会出错。
这些工具中的任何一个都可以适应这种情况吗?最好不要手动组合对象图,这似乎是逻辑计划 B。
更新:jbl(谢谢)建议了这个链接,这让我们走到了一半。它展示了如何从参数化的 TVF 加载简单实体的集合。但是,我正在尝试做一些更复杂的事情。就我而言
(1) 我需要加载子实体和
(2) 子实体的query/TVF也需要传递相同的两个参数
我的问题的核心是“最好/正确的方法是什么?” 有没有办法配置这些工具中的任何一个来为我填充对象图,因为它们都可以在简单的基于查询的情况下执行?