我正在构建一些WPF应用程序来管理我的时间。我希望在一个日历日的项目上节省工作时间。
所以我的问题是如何保存数据的最佳选择?我想我可以使用XML文件,Access数据库文件或属性。我想在本地保存数据,因此在这种情况下不需要SQL Server操作。 :)
你怎么看,走哪条路?
答案 0 :(得分:6)
我知道你说没有SQL Server,但是我读到这意味着你不想要“服务器”,并且你想将数据存储在客户端上。我还假设您可能不介意数据的可管理性。你知道,像备份这样的东西。事务总是很好,因此您的数据可以保持一致。所以,虽然你可以使用XML(请从头脑中消除所有关于Access的想法),但当这是一个已解决的问题时,你最终会自己滚动持久性。
所以,请查看免费的SQL Server Compact版本。它非常轻巧,可以在桌面或移动设备上运行,并且如果您的应用程序需要这样做,则可以轻松部署。所有常见的持久性框架都支持它。我是否提到它是免费的(如没有费用)?
答案 1 :(得分:5)
我会以纯粹或.NET友好的形式抓取SQLite(在Google搜索'sqlite .net'时会给你一些选项)。它是超级便携的,在我看来,比SQL Server compact更容易设置和分发。
重要的是确保您与代码中的持久性机制没有太紧密的联系,因此将来您可以轻松替换您想要的任何存储策略。
答案 2 :(得分:4)
我建议选择最简单的数据源并将其适当地解耦,这样当你找出适合你的目的时,你可以在以后放入一个新的,不同的数据源。为此,您可能会发现XML或甚至明文等内容可能是最简单的事情。
根据实际使用情况确定数据源所需的特征后,请选择适当的后备存储。
我认为做出这个决定并不重要,因为这是个人项目,而不是商业项目。
答案 3 :(得分:1)
我过去使用过的一种简单的方法就是你的“xml文件”。只需创建一个描述您关注的数据的对象,然后将其序列化为xml。
Greg绝对是正确的,他说确保您的数据源正确解耦,以便在需求发生变化时将其切换出来。