代码之家  ›  专栏  ›  技术社区  ›  Vaccano

URI类101-相对项目引用

  •  0
  • Vaccano  · 技术社区  · 14 年前

    我几乎不知道 URI class . 我需要建立一个相对的URI来引用我的项目中的一个文件(在项目的根目录上)。

    我该怎么做?

    这是我尝试过的,但似乎不起作用:

    var uri = new Uri("ModuleCatalog.xaml", UriKind.Relative)
    

    我也尝试过:

    var uri = new Uri("/ShellProject;component/ModuleCatalog.xaml", UriKind.Relative);
    

    当我检查我的 uri 调试器中的变量引发了许多异常。唯一真实的值是原始文本值。

    我需要做什么才能使它成为有效的URI?

    我想我不知道URI对象是如何工作的。

    我想我是在问如何创建一个URI的基础知识,并让它引用我项目中的一个文件( 带着 必须硬编码C:\驱动器的完整路径。

    2 回复  |  直到 14 年前
        1
  •  3
  •   Jader Dias    14 年前

    var uri = new Uri("ModuleCatalog.xaml", UriKind.Relative)
    

    string assemblyLocation = Assembly.GetExecutingAssembly().Location
    string moduleCatalogPath = Path.Combine(assemblyLocation, "ModuleCatalog.xaml");
    
        2
  •  0
  •   Jim Mischel    14 年前

    Uri.TryCreate

    Uri baseUri = new Uri("http://example.com");
    Uri newUri;
    if (Uri.TryCreate(baseUri, "ModuleCatalogue.xaml", out newUri))
    {
        // Uri created successfully
    }