c# - 修改 .NET 项目文件和引用属性

标签 c# .net visual-studio msbuild

我正在开发一个应用程序 (C#),它将从多个 csproj 文件中读取项目属性/引用(以及引用的属性),并修改它们的值。

但是,在那些 csproj 文件中找不到像“copy-local”这样的引用属性(单击引用时在属性资源管理器中看到的属性)。有没有一种方法可以访问它们并以编程方式修改它们的值?

最佳答案

一切都在 XML 项目文件中 - 这些信息实际上不可能存在于其他任何地方,它必须存在于某个地方,对吧?

这是我为您快速完成的示例。对于框架程序集,Copy Local 默认为 true。当您将 Copy Local 设置为 false 时,您会获得一个名为 private 的 XML 元素,该元素包含在该引用中,该引用本身设置为 false。

在此示例中,System.Core 设置为 Copy Local = false

<Reference Include="System.Core">
  <RequiredTargetFramework>3.5</RequiredTargetFramework>
  <Private>True</Private>
</Reference>
<Reference Include="System.Web" />

关于c# - 修改 .NET 项目文件和引用属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11994717/

相关文章:

visual-studio - 如何为我的 DLL 创建安装程序?

c# - 当所有后台线程池线程完成时得到通知

c# - 当 XML 文件更改时,如何强制 Visual Studio 2008 从 T4 模板重新生成代码?

c# - 如何更改 Visual Studio 中所有文件的版本

c# - 在按下 Enter 键时绑定(bind) TextBox

.net - 如何根据提供的属性名称订购 NHibernate 3.0 Linq 查询

c++ - 链接 : fatal error LNK1104: cannot open file 'libcollada14dom21.lib'

c# - Azure 移动服务 - Entity Framework 代码首先删除并创建数据库不起作用

.net - 如何使用通用夹具并行执行 xUnit 类测试?

c# - 如何重构一堆方法使其静态化?