我正在构建我的第一个WinForms应用程序。
问-在两次使用应用程序之间保存一些数据的最简单/最好的方法是什么(例如,在这种情况下,带有状态和日期/时间的URL列表)?我不认为有任何数据库的需要。
例如*存储到文本文件是最简单的吗?*还是在DotNet中存储到XML文件也一样容易* Windows Registry如何-这是通常要避免的事情吗?它的使用是否兼容所有版本,包括Windows 7*数据库-可能在这里有点夸张*一个广泛使用的库?
谢谢
发布于 2009-09-19 03:54:26
在.NET中存储到XML非常容易,特别是如果您真的只是存储一个URL和一个时间戳。您可以创建自定义类来保存数据...在运行时,在应用程序中操作该类的实例。
当需要保存时,将对象序列化为XML...当应用程序稍后需要恢复数据时,只需反序列化即可。MSDN有一个简单的walkthrough。
值得注意的是,正如Quintin所做的那样,使用SQL Server Compact或其他一些轻量级数据库也可能是一个好主意。XML又快又简单--但是如果您需要人们共享数据,或者您需要比简单的序列化更灵活的东西,那么最好使用数据库。
发布于 2009-09-19 03:56:04
查看项目的设置(在解决方案资源管理器>属性>设置选项卡中右键单击项目),您可以为每个用户定义许多在程序使用过程中保持不变的变量,如用户名、上次更新时间、代理服务器,诸如此类。这些设置本身被序列化为XML,并存在于每个用户的Application settings文件夹中,但您也可以指定默认设置或特定于应用程序的设置。
然后,您可以使用如下设置:
MyNamespace.Properties.Settings.Default.MySetting
有关设置文件的更多信息,请访问@ MSDN或the Code Project
如果你只需要在会话之间存储几个变量,这是很棒的。如果您需要存储大量数据,请查看其他答案中建议的数据库选项或serialization。
发布于 2009-09-19 03:46:38
如果您确实需要大量的持久性和应用程序外的存储,您可以使用sqlite或sql server compact (两者都是独立的),但是在您的情况下,我认为读/写通用应用程序数据文件夹中的xml文件会很好地满足您的需求,并且会变得越来越容易。
https://stackoverflow.com/questions/1447664
复制相似问题