2008-11-16 66 views
1

我有以下項目Visual Studio解決方案:哪裏會報告生成代碼。

  1. UI
  2. 數據訪問
  3. BusiessLogic
  4. 的BusinessObjects

我現在有一堆生成報表是代碼通過電子郵件發送或保存爲csv文件。

這些ReportGenerators類獲取業務對象並輸出文件或字符串。

哪個項目你會把它們放進去?我傾向於回答,但想看看其他人的想法?

回答

2

我會創建一個單獨的報告項目。它不屬於UI(我假設它們在後臺運行) - 它實際上是一個「報告邏輯」層。

如果您考慮如何支持reportng,則可能需要後端服務,但您可能希望將來也可以通過Web服務公開數據。如果您需要爲用戶提供前端報告功能,則可以像插入普通用戶界面 - >邏輯 - >數據訪問架構一樣插入報告邏輯。

此外,如果您將報告代碼分開,則可以在將來免費將其提取到專用報告層。

+0

在那種情況下,爲什麼不投入商業邏輯 – leora 2008-11-16 16:41:20

0

一個同意manwood的職位 - 你應該建立他們作爲報告(把一個存儲過程的報告,如果必要的話後面),原因如下:

  • 您可以運行通過的ReportViewer報告並顯示 他們 控制。這是相當簡單的做法 。

  • 你(更重要的是其他人 配套的應用程序)可以擴展 更 報告的應用程序,而無需釋放 應用程序的另一個版本。如果你不想支持應用程序,這是一個非常有用的功能。

  • 您也可以通過 報告服務發佈報告。

  • 你得到的所有數據導出選項與報告 服務框架報告服務(Excel中,CSV, PDF等)的 。