Assembly.GetExecutingAssembly()没有查找正确的路径

时间:2010-11-19 13:25:36

标签: asp.net .net-3.5 c#-3.0

我正在使用

读取嵌入式xml文件

C#:

var AssemblyRef = Assembly.GetExecutingAssembly();
TextReader reader = new StreamReader(AssemblyRef.GetManifestResourceStream("Text.xml"));

它已经工作了一段时间,但开始抛出错误。我追踪它正在寻找的路径,它正在bin文件夹的根目录中查找dll,而不是在Debug或release文件夹中。

一旦发布,这很好,但对于本地开发,我无法使我的一个功能起作用。

我在编译时将它设置为Debug。任何帮助都会很棒。

2 个答案:

答案 0 :(得分:1)

你有:

  • 更改了程序集名称或
  • 更改名称空间OR
  • 将资源移至项目中的文件夹

答案 1 :(得分:0)

我改变了对此的调用,一切都很好。

TextReader reader = new StreamReader(Assembly.GetExecutingAssembly().AssemblyRef.GetManifestResourceStream("Text.xml"));

拨打一个声明使其有效。我不确定为什么。