0

我继承了一个 n 层应用程序,我想对它的文件分组方式进行一些解释。

我猜 BAL 是业务访问层 DAL 是数据访问层

EAL有什么猜测吗?有人知道EAL是什么吗?

另外,为什么 BAL 中的文件名内容与 DAL 相同? 在此处输入图像描述

4

1 回答 1

1

EAL - 可能是实体访问层 - 虽然我不会那样命名它。在您的情况下,它只是实体框架模型和相关的 SQL 文件。我不会将该文件夹命名为 EAL,而是将其命名为Modelor DatabaseorData

至于为什么存在具有相同文件名的BALDAL,我敢打赌,如果您逐个比较每个文件,您会发现在属性、字段等方面存在一些差异。

DAL将1 到 1 映射到数据库表/实体字段名称,而BAL可能包含额外的字段和方法,用于 UI 中或用于中间处理(例如:基于某些其他值进行计算)到DAL中所需的字段。

示例: Contract.cs在 DAL 中可能仅包含所有必需的数据库字段,例如等BidStartDateBidEndingDate而您可能在 UI 中显示的 BAL 中调用了一个附加字段,该字段被计算为和DaysRemainingForBids之间的差异。current dayBidEndingDate

换句话说,数据库中不需要但业务逻辑和 UI 显示需要的属性和方法,对于同一实体,条目将在 BAL 中,而不是在 DAL 中。

于 2014-02-23T19:39:00.447 回答