假设我有一个C#类库项目,它只包含xml文件作为嵌入式资源.我想从另一个解决方案项目中访问这些资源.由于'class'库不包含类,因此很难获得如下所示的程序集:
typeof(ClassName).Assembly ...
Run Code Online (Sandbox Code Playgroud)
最终获得嵌入式资源.有没有办法获得嵌入式资源,而无需硬编码任何魔术字符串等?谢谢.
PS:
这似乎是目前唯一可能的方式:
var assembly = typeof(FakeClass).Assembly;
var stream = assembly.GetManifestResourceStream("Data.Blas.xml");
Run Code Online (Sandbox Code Playgroud)
我在'数据'程序集中创建了一个'假类'.
Kur*_*ran 15
您可以使用Assembly.GetManifestResourceStream()从嵌入式程序集加载xml文件.
System.IO.Stream s = this.GetType().Assembly.GetManifestResourceStream("ActivityListItemData.xml");
Run Code Online (Sandbox Code Playgroud)
编辑
您可以使用Assembly.Load()并加载目标程序集并从那里读取资源.
Assembly.LoadFrom("Embedded Assembly Path").GetManifestResourceStream("ActivityListItemData.xml");
Run Code Online (Sandbox Code Playgroud)