我正在 C# WinForms 中设计一个基于列表的应用程序,我想将数据存储在 XML 文件中(最终将序列化到数据库中)。我有一个自定义控件,可以根据 XML 显示列表数据,但我无法确定处理数据的最佳结构。我有一个 ListManager 类,它跟踪 XMLDocument,并具有 CreateList 和 AddListItem 等方法。我应该使用 XML 结构的本地副本作为 UI 控件的读取内容,还是应该使用实际的 XML 文件本身?有没有比 XMLDocument 更好的东西,我应该将其存储为成员变量来保存数据?
另外,我应该如何将 Controller 与 UI 控件链接起来?换句话说,当添加新项目时,我的 ListManager 应如何提醒 ListControl? (或者它根本不应该执行更新通知,而是主窗体应该执行此操作?)
谢谢!
最佳答案
我将创建一个自定义类来使用强类型集合(例如通用集合 System.Collections.Generic.List)来保存数据。然后,您可以在客户端上将该类与 XML 进行序列化,直到您准备好将内容推送到数据库中为止。使用序列化意味着您可以使用普通的旧 C# 对象,而不是尝试将 XMLDocument 类硬塞到您的业务对象中。
看看this article有关序列化如何工作的一些详细信息。
关于c# - 在 C# 中使用 XML 作为列表结构的设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1967626/