9

我正在编写一个我希望能够在 Windows 和 Mono 上使用的 C# 服务。我刚刚开始尝试使用 Mono 并试图确定存储设置以控制适用于 Windows 和 Mono 的服务的最佳方式。

  1. 安装服务的设置文件

    • 优点:每个平台的代码相同,易于查找以进行编辑
    • 缺点:权限,Windows 可能不喜欢写入文件
  2. 平台存储中的设置文件 (%APPDATA, /etc, ...)

    • 优点:有权限,更容易找到编辑
    • 缺点:处理每个平台需要更多编码
  3. 小型数据库(可能是 SQLite?)

    • 优点:更容易编写代码来存储和检索设置
    • 缺点:不容易手动编辑,同样的存储位置问题

您认为哪个最好,或者您有更好的建议?
我也可能会编写一个命令行客户端以允许更轻松地更改设置,这会改变设置的存储方式吗?

4

1 回答 1

5

看看孤立存储。这是一个为您提供每个应用程序存储的 API,它内置于 .NET 中并在 Mono 中受支持。API 为您提供存储在框架管理的位置的文件的文件 IO:在 Mono 中,它将是一个 ~/.isolatedstorage 目录,在 Windows 中,它将位于用户的文档和设置中的某个位置。

使用此 API,您可以维护您的设置文件,而不必担心操作系统细节或权限。

于 2009-04-23T00:56:59.960 回答