gpt4 book ai didi

c# - 是否通过存储库/服务/其他持久化 XML/CSV/其他

转载 作者:行者123 更新时间:2023-11-30 12:37:38 24 4
gpt4 key购买 nike

我有一个应用程序可以从 CSV 文件或数据库导入信息并将其导出为 XML。此 XML 当前正在保存到一个文件中。但是,由于项目需要,我决定将此 XML 保存到数据库中可能会更好。

目前我有处理导入/导出数据的 CSV、XML 和 SQL 存储库。 XML 存储库将传入的对象保存到一个文件中。目前它是存储对象到 XML 的映射的地方,因此它是唯一知道此结构的地方(同样,其他存储库也了解其各自的结构)。

现在我想将 XML 存储在数据库中,我开始质疑这种架构。为了插入到数据库中,XML 的结构必须可以从 SQL 存储库访问(注意,其他列中的数据可以与 XML 一起插入到数据库中)。这让我想知道 XML 表示是否应该存储在对象本身、服务层或其他地方。

解决此问题的最佳方法是什么?

更新:对我的问题的澄清。 XML 存储库当前保存在一个文件中。在我看来,将 XML 结构的知识保持在这个级别是错误的,因为那样我就无法灵活地将 XML 表示持久保存到我想要的任何媒体。让对象知道它的 XML 表示(或 CSV 表示等)是不是糟糕的设计?该结构的知识是否应该保持在另一个层次,那应该是什么层次?

最佳答案

难道您不只是将 XML 存储库更改为具有 SQL 后端吗? yopur 存储库做什么并不重要,它们只是作为存储和检索数据的“黑匣子”。将您的 XML 知识保密在 XML 存储库中,并仅使用 SQL 对其进行后端处理。

您可以将它链接到您的 SQL 存储库或单独保存。

关于c# - 是否通过存储库/服务/其他持久化 XML/CSV/其他,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/408556/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com