我继承了一个 n 层应用程序,我想对它的文件分组方式进行一些解释。
我猜 BAL 是业务访问层 DAL 是数据访问层
EAL有什么猜测吗?有人知道EAL是什么吗?
另外,为什么 BAL 中的文件名内容与 DAL 相同?
我继承了一个 n 层应用程序,我想对它的文件分组方式进行一些解释。
我猜 BAL 是业务访问层 DAL 是数据访问层
EAL有什么猜测吗?有人知道EAL是什么吗?
另外,为什么 BAL 中的文件名内容与 DAL 相同?
EAL - 可能是实体访问层 - 虽然我不会那样命名它。在您的情况下,它只是实体框架模型和相关的 SQL 文件。我不会将该文件夹命名为 EAL,而是将其命名为Modelor DatabaseorData
至于为什么存在具有相同文件名的BAL和DAL,我敢打赌,如果您逐个比较每个文件,您会发现在属性、字段等方面存在一些差异。
DAL将1 到 1 映射到数据库表/实体字段名称,而BAL可能包含额外的字段和方法,用于 UI 中或用于中间处理(例如:基于某些其他值进行计算)到DAL中所需的字段。
示例:
Contract.cs
在 DAL 中可能仅包含所有必需的数据库字段,例如等BidStartDate
, BidEndingDate
而您可能在 UI 中显示的 BAL 中调用了一个附加字段,该字段被计算为和DaysRemainingForBids
之间的差异。current day
BidEndingDate
换句话说,数据库中不需要但业务逻辑和 UI 显示需要的属性和方法,对于同一实体,条目将在 BAL 中,而不是在 DAL 中。