我正在创建一个数据访问层(DAL)来读取/修改存储在XML文件中的一些表。在我的应用程序运行时,这些表的行经常更新,因此我考虑了两种可能的替代方法:
Dictionary
。应用程序运行时,此字典会不断更新。当应用程序关闭时,我调用DAL的方法,以便用字典中的新数据覆盖旧文件。Dictionary
私有字段。通过这种方式,上层将调用DAL的方法来更新表的行。也许第二种方法比第一种更好?
答案 0 :(得分:1)
这里的选项2更适合封装,但会增加复杂性。字典是一个实现细节,您的上层不应该关注。相反,您的数据访问层应该公开表示实际表的类 - 例如,您可能有Person
类或Inventory
类。作为DAL类,这些将提供适当的添加,删除,更新,检索等方法。
更进一步,你有一个域层,它对从DAL类中检索到的行进行操作,这些行将添加业务方法(例如,Order
可以由Person
生成并影响{{1 - 在这些域类上调用方法的行为归结为DAL以实际触及基础数据。)