为什么我不能将.resx文件作为嵌入式资源访问?

时间:2013-09-16 11:25:16

标签: .net c#-4.0 embedded-resource resx

我想编写一些可以将我的RESX文件作为嵌入资源访问的代码,将它们作为XML文档加载并对它们执行一些分析(例如检查重复的节点)。

请注意,我不是要将它们作为资源集合来访问,而是作为基础XML文件。

以下代码:

using (Stream stream = assembly.GetManifestResourceStream(resourceName))
{
    using (StreamReader streamReader = new StreamReader(stream))
    {
        returnText = streamReader.ReadToEnd();
    }
}

...失败(返回null stream变量),当引用与.resx文件位于同一目录中的文本文件完全相同的代码时,成功。因此GetManifestResourceStream()似乎故意忽略.resx个文件。

有人可以建议为什么,或者我可能会做些什么呢?

1 个答案:

答案 0 :(得分:0)

我能够在Silverlight项目中获取embeddeb resx资源:

string resourceName = "/MyAssemby;component/MyResource.resx";
using (XmlReader reader = XmlReader.Create(resourceName))
{ ... }

但在其他项目中失败,例如在测试中。