尽管隐含地转向表示、逻辑和数据访问之间的分离,但我对使用严格的 3 层架构相对较新。在学习该主题并反映我以前的项目时,我提出了一个问题,即是否存在基于表示层输入请求数据的最佳实践。
更具体地说,假设它是一个 C# Windows 窗体应用程序,DAL 从文件中读取请求的数据。因此,表示层必须有一种方法可以从文件中请求数据。
我想象的粗略工作流程如下所示:
- 鼠标点击按钮显示 OpenFileDialog
- 如果用户选择了一个文件,则将名称传递给 BLL
- BLL 将文件名传递给 DAL
- DAL 读取文件(可能会解析它)
- DAL 将内容(或解析的对象)传递给 BLL
- BLL 转换和预处理数据
- BLL 将转换和预处理的数据传递给 PL
- PL 呈现数据
这对我来说似乎有点麻烦,但看起来这是要走的路——至少在某种程度上是这样。这种方法是正确的还是我得到了什么可怕的错误?
我真的很期待你的回答。
干杯,保罗