【问题标题】:C# XML Dynamic Database File LocationC# XML 动态数据库文件位置
【发布时间】:2018-08-16 22:30:31
【问题描述】:

我有一个读取/写入 XML 文件的 VS2017 C# Windows 窗体应用程序。当前使用路径引用调用该文件:

Application.StartupPath + @"\Database.xml"

在开发过程中位于文件夹路径 [...\bin\Debug] 中。

我创建了一个安装程序,将文件放在用户应用程序数据文件夹中

我的问题如下:在开发过程中,ProgramData 文件夹不存在,因此我无法引用此路径作为文件位置。保留此路径位置变量并在运行时确定路径位置的正确方法是什么。我还应该将 xml 文件添加为项目树的一部分(添加 -> 现有项目...)

感谢您提供的任何指导。

【问题讨论】:

标签: c# .net xml


【解决方案1】:

我不确定您为什么要将文件放在 ProgramData 文件夹中,因为您提到的文件夹是在部署您放置可执行文件的位置之后。将其视为您最近的路径,因此使用可执行文件。这样您就不必担心部署和开发之间的差异。

关于您关于添加文件的观点,这并不重要,只要该位置方便您并在您的应用程序中调用即可。

希望这会有所帮助。

【讨论】:

  • 感谢您的意见。我想将文件移动到 ProgramData 文件夹的原因是访问权限。该应用程序必须以管理员身份运行才能绕过对 Program Files 文件夹的任何访问冲突。
  • 存储数据的位置很重要。用户可能无法写入程序文件或可执行文件夹。如果它是可写的,则多个用户可以覆盖彼此的数据。如果您修复应用程序,可执行文件夹可以被删除或替换。使用Environment.SpecialFolder;返回包含您需要的任何文件夹的路径。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-05-12
  • 1970-01-01
  • 2011-02-11
  • 2015-06-05
  • 2012-12-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多