【问题标题】:read/write to a resource in .net读/写.net中的资源
【发布时间】:2015-05-07 12:00:57
【问题描述】:

在我的 c# 程序中,我需要读取 1 个字符串(该字符串是文件路径)。有时我需要用不同的路径覆盖这个文件路径。创建一个 .txt 文件作为资源似乎是个好主意,但我发现这不是写东西的好方法。我唯一的另一个想法是让一个数据库参与进来,但这似乎对 1 个字符串来说太过分了。

有没有更好的方法来做到这一点?

【问题讨论】:

  • 为什么写入文本文件不是一个好方法?
  • 您能否更深入地解释一下您想要实现的目标是什么?
  • 1) 一个配置文件。 2) .INI 文件。 3) 注册表项。 4) 磁盘上的文本文件。在此处搜索[c#] store config info - 这个问题已经被问过很多次了。在这里,我found one for you
  • 除非路径由于某种原因敏感,否则请考虑使用 app.config 或将“设置”文件添加到您的项目中。这些都易于在代码中阅读,并且是为您的程序进行可配置设置的标准方法

标签: c# .net resources


【解决方案1】:

假设您所追求的是应用程序生命周期内的字符串,那么在您的程序中使用static 字符串将是最好的方法。即使使用以下选择,您也需要执行此操作,因为从外部数据存储中读取 每个 操作效率低下,但您通常只在程序启动时读取并将值保存在内存中之后。

如果字符串需要超过您的应用程序的生命周期,也就是说在程序打开和关闭时可用且一致,那么您需要外部数据,无论是数据库、注册表条目,或旧的配置文件。

走最简单的路线,配置文件应该是您的程序可以随时访问的位置,不会移动,并且大多数配置位于用户的典型区域之外(不要将其存储在“我的文档”中)。 "%APPDATA%\YourProgramName\Config.xml 是最明显的位置。请参阅 ExpandEnvironmentVariables 将这些变量转换为可用位置。

【讨论】:

  • 您帖子的第一行做了一个假设。
  • 这就是为什么第二段详细介绍了在其他情况下应该做什么
  • 设置条目比配置文件更容易工作。然而,显然,OP 没有兴趣跟进可以正确回答的问题。
  • @papgomez 我不太清楚你所说的“设置条目”是什么意思,所以 至少会欢迎这个方向的另一个答案。
【解决方案2】:

如果您不想在文本文件中写入字符串,请将其写入 xml 格式或尝试使用 Xmlserializer 序列化您的类。

如果只涉及一个字符串,请尝试使用静态属性并使用静态类访问它以在您的应用程序中全局使用

【讨论】:

    猜你喜欢
    • 2018-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多