我正在開發一個C#
3層應用程序:DAL(Data Access Layer
),BLL(Business Logic Layer
)和UI
(用戶界面)。現在我需要在PDF
上創建報告,數據來自DAL
,所以我認爲我應該創建一個新類來完成它,問題是,我在哪裏將類放在分層方面? (PS:我將在此過程中使用iTextSharp)在c#3層應用程序上創建PDF:哪一層?
預期的結果是:用戶單擊表單上的按鈕,新的pdf出現在指定的文件夾中。
這是一個重要的項目,所以我不能搞砸了:(
我正在開發一個C#
3層應用程序:DAL(Data Access Layer
),BLL(Business Logic Layer
)和UI
(用戶界面)。現在我需要在PDF
上創建報告,數據來自DAL
,所以我認爲我應該創建一個新類來完成它,問題是,我在哪裏將類放在分層方面? (PS:我將在此過程中使用iTextSharp)在c#3層應用程序上創建PDF:哪一層?
預期的結果是:用戶單擊表單上的按鈕,新的pdf出現在指定的文件夾中。
這是一個重要的項目,所以我不能搞砸了:(
似乎很明顯,創建一個基於獲取的數據報表是商業邏輯的任務,因此將其在該層最初似乎沒有-brainer。
在任何情況下,你絕對不希望它在UI中,而且DAL似乎也不合邏輯。讓BLL調用DAL並接收數據,然後將這些數據傳遞給BLL,它可以處理生成報告的工作,如果你願意,可以說這個組件屬於BLL,但是我認爲確保它與系統其他部分儘可能地分離更重要(提示:把它藏起來 在一個接口後面,只能通過它來調用它)。
感謝您的答案和提示,這是一個很好的提示。我會這樣做:) – tiago32
你打算如何創建PDF我可以認識嗎? – Mathematics
我打算使用iTextSharp來做到這一點,不知道到底是怎麼回事,因爲我剛剛開始這個項目的這個部分 – tiago32