【发布时间】:2013-08-24 18:12:12
【问题描述】:
如何获取所有资源,将其复制到创建的二进制文件中?
我认为都是这样的元素(有 CopyToOutputDirectory 标签):
<ItemGroup>
<None Include="Configs\Config.config">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
像这样:
<ItemGroup>
<Resource Include="Resources\Icons\icon4.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\Icons\icon5.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\Icons\icon6.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="icon7.ico" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\Icons\icon8.png" />
</ItemGroup>
我应该像这样解析所有带有“资源”标签的元素(?):
XDocument doc = XDocument.Load(filePath);
IEnumerable<XAttribute> attr = doc.Descendants().Attributes("Resource");
还有一个问题——如何在 CopyToOutputDirectory 标签之前获取元素?
附:如果有用的话-我有项目文件夹(另一个文件夹)。 我从这个文件夹中解析所有 .csproj 文件并生成带有资源列表的 XML 文件,这些资源被复制到每个项目的编译二进制文件中。
【问题讨论】:
-
您想要运行时的资源吗?还是编译时?
-
我只想知道资源列表。我解析 csproj 文件并使用资源(路径)生成 xml 输出,并将其复制到二进制文件。
标签: c# xml xml-parsing csproj