类库项目的资源

时间:2010-06-13 14:38:45

标签: c# .net visual-studio

我想将一些xml文件作为资源添加到我的类库项目中。 知道怎么做,以后再打电话吗? 在Windows应用程序中,我会像ClassLibrary1.Properties.Resources.file.xml

那样做

但是在这里我怎么也不知道我是怎么做到的?

3 个答案:

答案 0 :(得分:10)

  

在Windows应用程序中,我会像ClassLibrary1.Properties.Resources.file.xml

那样做

默认情况下,为访问资源而生成的类是内部的,因此您无法从其他程序集访问它。如果需要将其公开,请选择.resx文件,转到其属性,然后将“自定义”工具属性从“ResXFileCodeGenerator”更改为“PublicResXFileCodeGenerator”。这个自定义工具会生成公共类,这可以解决您的问题。

答案 1 :(得分:9)

This article解释如何在C#中使用嵌入式资源。

归结为

  1. 在'设计时':将文件添加到项目并将其标记为嵌入资源(属性)
  2. 在'运行时':获取包含所需资源的Assembly实例,然后以流形式获取该资源。
  3.   

    var assembly = Assembly.GetExecutingAssembly();

         

    var stream = assembly.GetManifestResourceStream(“fully.qualified.name.of.the.resource”);

    如果您正在努力计算资源的fq名称,那么懒惰的方法是使用reflector打开包含它的程序集。转到Resources文件夹,右键单击特定资源,然后选择“复制”。

答案 2 :(得分:4)

右键单击“类库项目”,选择属性,在左侧的选项卡上选择“资源”部分。

由于您的.resx文件无法被Visual Studio识别,因此请添加一个新文件。 它将创建一个新的.resx文件。

复制所有原始内容并粘贴到新内容中。然后你可以删除旧的。 就是这样!

您需要为所有受支持的语言重复相同的过程。