相关疑难解决方法(0)

何时 - 以及为什么 - 应该在Windows注册表中存储数据?

作为开发人员,在注册表中存储配置/选项的工具是我生命中的祸根.我无法轻易跟踪这些选项的变化,无法轻松地将它们从机器移植到机器,这一切都让我真正渴望.INI文件的美好时光......

在编写我自己的应用程序时,我应该选择放入注册表而不是旧式配置文件,为什么?

windows registry

124
推荐指数
6
解决办法
2万
查看次数

在.NET中本地存储数据的最佳方式(C#)

我正在编写一个应用程序,它接收用户数据并将其存储在本地以供日后使用.应用程序将经常启动和停止,我想在应用程序启动/结束时保存/加载数据.

如果我使用平面文件,那将是相当简单的,因为数据并不真正需要保护(它只会存储在这台PC上).我相信的选择因此是:

  • 平面文件
  • XML
  • SQL DB

平面文件需要更多的维护工作(没有类似于XML的内置类),但是之前我没有使用过XML,而且对于这个相对简单的任务来说,SQL似乎有些过分.

还有其他值得探索的途径吗?如果没有,哪一个是最好的解决方案?


编辑:要为问题添加更多数据,基本上我唯一想存储的是一个看起来像这样的字典

Dictionary<string, List<Account>> 
Run Code Online (Sandbox Code Playgroud)

其中Account是另一种自定义类型.

我会将dict序列化为xmlroot,然后将Account类型作为属性吗?


更新2:

所以可以序列化字典.使它变得复杂的是这个dict的值是泛型本身,它是Account类型的复杂数据结构的列表.每个帐户都相当简单,它只是一堆属性.

我的理解是,这里的目标是尝试最终得到:

<Username1>
    <Account1>
        <Data1>data1</Data1>
        <Data2>data2</Data2>
    </Account1>
</Username1>
<Username2>
    <Account1>
        <Data1>data1</Data1>
        <Data2>data2</Data2>
    </Account1>
    <Account2>
        <Data1>data1</Data1>
        <Data2>data2</Data2>
    </Account2>
 </Username2>
Run Code Online (Sandbox Code Playgroud)

你可以看到heirachy是

  • 用户名(字典串)>
  • 帐户(列表中的每个帐户)>
  • 帐户数据(即类属性).

从a获取这个布局Dictionary<Username, List<Account>>是棘手的一点,也是这个问题的本质.

这里有很多关于序列化的"如何"回应,这是我的错,因为我没有在早期更清楚,但现在我正在寻找一个明确的解决方案.

.net c# xml data-storage

68
推荐指数
9
解决办法
14万
查看次数

Registry vs. INI文件,用于存储用户可配置的应用程序设置

我是一名新的Windows程序员,我不确定应该在哪里存储用户可配置的应用程序设置.我理解需要为用户提供用户友好的方式来更改应用程序设置,例如编辑| 设置表单或类似.但是,在用户点击该表单上的"应用"按钮后,我应该在哪里存储值?

在Windows注册表中存储设置与将其存储在本地INI文件或配置文件或类似文件中的优缺点是什么?

windows registry settings ini configuration-files

47
推荐指数
3
解决办法
2万
查看次数

我应该在哪里将配置文件保存在Rust中

我需要保留信息,例如程序的用户配置及其输入。在Linux和Windows上保存此文件的最佳位置是哪里?

这是用于防锈程序的,将安装~/.cargo/bin使用该程序。我试图将文件保存到其中,~/.cargo但是我不知道这是否合适,因为我是Rust的新手。

linux windows rust rust-cargo

2
推荐指数
1
解决办法
116
查看次数

在程序c#中保存文件信息

是否可以在程序中保存一些字段,还是必须将它们写入文件?

例:

  1. 我打开一个文件(使用OpenFileDialog)并将其放在FileInfo中
  2. 关闭程序
  3. 重启程序
  4. 转到打开 - >最近 - >选择上一个文件

谢谢

.net c# persistence

0
推荐指数
1
解决办法
1347
查看次数