在c#3层应用程序上创建PDF:哪一层?

时间:2014-07-15 09:11:16

标签: c# .net pdf pdf-generation layer

我正在开发一个C# 3层应用程序:DAL(Data Access Layer),BLL(Business Logic Layer)和UI(用户界面)。现在我需要使用来自PDF的数据创建DAL的报告,所以我认为我应该创建一个新的类来完成它,问题是,我在哪里将该类放在分层方面? (PS:我将使用iTextSharp进行处理)

预期结果是:用户单击表单上的按钮,新pdf将出现在指定的文件夹中。

这是一个重要的项目,所以我不能搞砸:(

1 个答案:

答案 0 :(得分:0)

很明显,基于提取的数据创建报表是一项业务逻辑任务,因此最初将它放在该层中似乎是不费脑子的。

在任何情况下,你绝对不希望它在UI中,并且DAL似乎也不符合逻辑。让BLL调用DAL并接收数据,然后将该数据传递给BLL中的单独组件,该组件可以处理生成报告的工作。如果你愿意,可以说该组件属于BLL,但我认为确保它与系统的其他部分尽可能分开更为重要(提示:将其隐藏在接口后面,并且仅调用通过那个)。