【发布时间】:2010-02-18 15:55:45
【问题描述】:
我有一个难题。 这是我的设置: ASP.NET/NET 3.5 Web 应用程序使用标准构建(DB 层、BL 层等...)
我需要生成一些报告。这样做的标准方法是直接让报告服务查询数据库,或者我可以让报告服务查询 Web 服务(我将创建它)。
我喜欢 Web 服务方法,因为如果底层架构发生变化,我只需要确保我的 Web 服务返回正确的数据。报告服务不受影响。
如果使用直接查询数据库,需要更新报表服务。
我应该使用网络服务(http://msdn.microsoft.com/en-us/library/aa964129(SQL.90).aspx)还是直接查询?
【问题讨论】:
-
为了性能,我会说直接查询。
-
我的目标是在一个地方进行更改。使用 web 服务,我只需要确保 web 服务返回正确的数据,而不必担心报告服务。例如,数据库中的简单列重命名将迫使我转到报告服务并更改查询,而使用 web 服务我不必担心。现在,如果它是比列重命名更复杂的更改怎么办?
-
如果您可以等待,OData 将是一个不错的选择。
标签: c# sql .net-3.5 reporting-services