如何在生成C#解决方案时禁止生成NLog.xml文件
禁用C#构建时输出NLog.xml文件的方法
NLog.xml是NLog类库自带的API文档文件,默认构建时会随依赖一起复制到输出目录,你可以通过以下两种方式禁用该文件的生成输出:
方法1:全局禁用所有第三方依赖的XML文档输出
如果不需要所有引用类库的XML文档文件,直接修改项目的.csproj文件,在顶层<PropertyGroup>节点中添加如下配置:
<AllowedReferenceRelatedFileExtensions>.pdb</AllowedReferenceRelatedFileExtensions>
该配置会限制构建时仅复制.pdb调试符号文件到输出目录,所有.xml文档文件都会被排除。
方法2:仅排除NLog.xml文件,保留其他依赖的XML文档
如果只需要移除NLog.xml,其他类库的XML文档仍需保留,在.csproj文件的末尾(</Project>节点之前)添加如下构建目标:
<Target Name="ExcludeNLogXmlFromOutput" AfterTargets="ResolveAssemblyReferences"> <ItemGroup> <ReferenceCopyLocalPaths Remove="@(ReferenceCopyLocalPaths)" Condition="'%(Filename)%(Extension)' == 'NLog.xml'" /> </ItemGroup> </Target>
该目标会在构建的引用解析阶段执行,直接把NLog.xml从待复制到输出目录的文件列表中移除,不会影响其他文件的输出。
修改完成后清理解决方案,重新执行构建即可生效。
内容的提问来源于stack exchange,提问作者bthulu
相关产品推荐
相关产品推荐

