1

对于点网程序,存储序列化数据的“正确”位置在哪里?

在 /user/username 文件夹中?程序文件/MyAppName/? 别的地方?

4

2 回答 2

0

我会说这取决于您要存储的日期类型。如果它是用户特定的日期,那么我建议使用返回的路径

Environment.GetFolderPath(System.Environment.SpecialFolder.ApplicationData);

如果它不是用户特定的数据,也就是说,它是程序的所有用户共享的数据,那么将其存储在安装路径下的文件夹中可能更合适。

于 2013-08-20T12:51:43.730 回答
0

Microsoft 的 Pat Altimore 的这篇博客文章建议了多个位置,具体取决于您尝试存储的数据类型。

.NET 提供了特殊的 Enum 值,您可以将其传递到System.Environment.GetFolderPath中,以获取所需的“特殊”文件夹。

简而言之:

  • 如果是用户特定的数据,请使用SpecialFolder.ApplicationData.
  • 如果是特定于机器的数据,请使用SpecialFolder.CommonApplicationData.

对于特定于机器的数据,您可能还需要以管理员身份运行程序,否则您将无权对该位置进行写访问。

于 2013-08-20T12:59:55.590 回答