c# - 什么是存储大量对象的好方法,这些对象将被持久地修改/搜索?

标签 c# database winforms object

所以为了学习,我正在用 C# 编写某种银行软件。我有不同的类(class),例如

class Client {
    int userID;
    string firstName;
    string lastName;
    string description;
    DateTime birthdate;
    string type;
    ....
}

class Account {
    int accountID;
    int userID;
    string type;
    DateTime runtime;
    DateTime opened;
    string description;
    ....
}

现在我想在图形界面 (WinForms) 中显示所有不同的数据,我认为 DataGridView 是正确的选择,并构建表单以便用户也可以添加新的客户和帐户修改或删除它们。

我的问题是我不确定我应该如何保存我的对象和它们的数据,所以它在退出并重新启动程序后仍然可用,而不会失去在对象基础上处理数据的能力(比如修改数据使用 setter 方法)。如果无需设置一大堆东西就可以轻松发布,那就太好了,这样我就可以将我的应用程序发送给某人进行代码审查。有点像您可以在 Visual Studio 中设置本地数据库

也许我只是把自己弄糊涂了,我的思路错了,请告诉我。感谢您的帮助。

最佳答案

Sqlite对于桌面应用程序中的数据库来说是一个不错的选择。整个数据库是硬盘驱动器上的单个文件,数据库引擎在您的应用程序内部运行,因此您无需安装任何软件即可运行。

this question您可以找到适用于 sqlite 的可用 .net 库。

关于c# - 什么是存储大量对象的好方法,这些对象将被持久地修改/搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37324261/

相关文章:

c# - 如何在 WP8 map 上创建自动缩放图像

c# - 使用 Slite.net-PCL 进行 Xamarin Forms 的简单查询

c# - 进度条在 winform 中卡住

c# - ToolStripCombobox.SelectionChangeCommitted 未找到

c# - 不确定我是否在 tftp 应用程序中正确使用 "using"c#

c# - 如何在WPF MVVM中将View对象发送到ViewModel?

c# - 我怎样才能实现这种 StackPanel 和 UniformGrid 行为的混合?

mysql - 我们的 MySQL 数据库应该与我们的 Apache 服务器分开吗?

mysql - 一个表可以有多个主键吗?

php - 如何在 php 中打印 ñ