所以我知道这个问题似乎有点广泛,所以让我给出一些背景。在我工作的地方,我们的工程师使用这些巨大的Excel文件充满数据(物料清单,成本等账单),我正在寻找一种将这些文件用作数据源的好方法。我知道导入.xlsx与.csv文件需要更长的时间。具有某种正在运行的程序,该程序会定期将数据转换为csv文件,然后使用该文件作为数据源,是否有益?还是有办法使excel数据与数据库保持同步?
我不确定我的“选项”是什么。或者是否有更好的通用做法。我在创建程序时只使用数据库,但是不得不让工程师维护excel文件和数据库。
我已经看过的东西
任何指针将不胜感激。
答案 0 :(得分:1)
一些建议:
确保您的数据源隐藏在抽象的后面。例如,像IProductRepository
之类的接口仅包含您需要与之交互的方法。该接口不应以任何方式暗示底层实现是什么。
这样,您的选择就不会“泄漏”到代码的其他部分。您将能够改变主意,而无需进行任何修改。其次,当您尝试创建其他实现时,您将预先了解它需要支持哪些方法。
以下是不直接使用Excel作为数据源,而是定义自己的数据库的一些原因:
这两者都反映了我们的应用程序应该对其所依赖的事物拥有更多控制的想法。当您定义存储库接口时,您的应用程序会说无论实现是什么,它都必须符合此要求。创建自己的数据库是该原理的扩展。您可以控制数据存储,并且将数据放入其中的任何操作都必须符合该要求。您无法控制无法控制的内容,但是将其推离您要控制的部分更远,以限制更改后所需的工作。