【问题标题】:Get relative path to file at design time在设计时获取文件的相对路径
【发布时间】:2012-10-29 21:53:00
【问题描述】:

我正在构建一个 Windows phone 8 应用程序。

在设计时,我加载了一个示例 XML 文件以获取示例数据。 它运行良好,但我想使用相对于解决方案根目录的文件路径,以便它适用于所有具有相同代码的开发人员。

这是我当前的代码:

var path = @"C:\Users\Tom\MyProject\SampleData\stub.xml";
xml = new StreamReader(path).ReadToEnd();

我尝试了类似@"SampleData\stub.xml" 的相对路径。它适用于手机,但在设计时出现此错误:

DirectoryNotFoundException:找不到路径“C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\SampleData\login.xml”的一部分。

【问题讨论】:

  • 相对路径必须有一些相关的基础。我想这是你的工作目录。 ;-) 将文件包含在您的项目中并设置操作:如果较新则复制
  • 这不是完全相同的问题,但基本上你需要使用我认为这个问题的解决方案之一:stackoverflow.com/questions/2425944/…
  • 谢谢 Dana,这是唯一对我有用的解决方案:stackoverflow.com/questions/723172/…

标签: c# wpf xaml relative-path


【解决方案1】:

这就是我所做的:

var path = "SampleData/stub.xml";
var res = Application.GetResourceStream(new Uri(path, UriKind.Relative));
xml = new StreamReader(res.Stream).ReadToEnd();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-31
    • 1970-01-01
    • 2017-04-21
    • 1970-01-01
    • 2019-07-13
    • 1970-01-01
    • 1970-01-01
    • 2018-11-11
    相关资源
    最近更新 更多