不公开业务逻辑的API

本文关键字:API 业务 | 更新日期: 2023-09-27 18:21:28

我需要编写一个WCF服务,将数据引入报告工具。报告工具以懒惰的方式显示数据,直到用户没有点击它才显示数据。

我不能一次发送所有内容,因为可能有几兆比特的数据,因此我需要分批发送。

问题是,我不想为每个报告创建很多web函数,因为这样BL的一部分将在报告工具中。

是否可以以某种方式使每个报告在自己的web会话中运行,每次它询问下一部分数据时,我都可以将其发送回,并在同一会话中完成所有操作?

也许你能更好地解决我的问题。

不公开业务逻辑的API

有许多技术可以提供帮助。我想看看WCF数据服务,它允许您进行灵活的查询(IQuerable)和关联遍历,这应该可以解决您的延迟加载问题,而不必创建单独的WCF调用的整个负载。

还可以看看SQl Server Reporting Services,它是一种更通用的报告解决方案,可能会对您有吸引力。

这两种技术中的任何一种都可以帮助您避免BL泄漏到报告工具中。可能有很多类似的非MS解决方案可以做类似的事情,但我已经列出了上面两个,因为你正在使用WCF,所以你可能更熟悉MS堆栈(但也许我认为这是一个愚蠢的假设……如果不是这样,他们会让你开始寻找什么!)