在我最近的项目中,我尝试使用 EF(DataBase First)作为 ORM 数据库映射器。我还使用 stimulsoft 报告来显示数据。我想使用 Business Objects 在刺激报告中显示数据,并在其中从 EF Context 加载过滤数据!我有与一对多关系相关的实体,我想在执行一些过滤后在报告中显示数据。例如:
var detailData=(from c in Context.BooksRevisions
where c.RevisionNumber==3
select c).ToList();
var masterData=(from d in detailData
select d.Books).Distinct().ToList();
所以在这里我过滤了主数据和详细数据。我想将它们发送到具有 Master-Detail 结构的 stimulsoft 报告,但我无法确定报告中哪个对象是详细信息(它必须为 master-detail 创建一个层次结构树,但它不会创建相关对象。它只是创建 2 个分隔对象为“Books”和“BooksRevisions”,现在我无法将它们联系在一起)。我在谷歌上搜索并找到了“使用业务对象的主从细节”的视频,但它没有显示主从对象是如何制作的,也与 EF 无关。
我尝试动态发送 EF IEnumerable<Books>和IEnumerable<BooksRevisons>以设计动态状态的报告。这里有一个大问题:报表总是在detailData中显示所有现有数据(这是因为 Navigation 属性总是指向所有详细数据)!
那么,如何首先使用 Entity Framework 数据库为过滤数据创建主从报表呢?
提前致谢,莫森。