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

C#文件位置连接

  •  3
  • Skawful  · 技术社区  · 16 年前

    我在WCF应用程序中有一个描述依赖关系的xml文件。它在服务facade构造函数运行时加载,在单独测试应用程序时效果很好。我们单独的web测试应用程序的设置方式是另一个(mvc)项目中的端点,因此相对路径与我们需要加载的xml文件不同。问题是,从两个项目加载该文件的最佳方式是什么(这样,当您单独运行第一个项目时,它会加载该文件,但当在第二个项目中加载该dll时,它仍然可以找到xml文件)?

    3 回复  |  直到 16 年前
        1
  •  1
  •   Mark Byers    16 年前

    在运行时,您将能够在两个项目的当前目录中找到该文件。

        2
  •  0
  •   Todd Smith Brandon    16 年前

    尝试 Server.MapPath

    例子:

    Server.MapPath(@“~\App\u Data\menudata.xml”)

        3
  •  0
  •   Skawful    16 年前

    var _assembly = System.Reflection.Assembly.GetExecutingAssembly();
    XDocument xdoc = XDocument.Load(new StreamReader(_assembly.GetManifestResourceStream("TheNamespace.Api.TheFile.xml")));
    

    这当然要求文件是嵌入式资源。