基于问题:Reading a *.CSPROJ file in C#
我有代码可以从 *.csproj 文件中提取一些属性,代码如下:
Project project = new Project();
var Property001=
from pg in project.PropertyGroups.Cast<BuildPropertyGroup>()
from item in pg.Cast<BuildProperty>()
where item.Name == "Property001"
select item.Value.ToString();
这工作正常,但下一个问题是我如何也使用 LINQ 更新属性?
最佳答案
您可以使用 LINQ 获取属性项 - 而不仅仅是值 - 以更新:
var Property001item =
(from pg in project.PropertyGroups.Cast<BuildPropertyGroup>()
from item in pg.Cast<BuildProperty>()
where item.Name == "Property001"
select item).FirstOrDefault();
if (Property001item != null)
{
Property001item.Value = "MyNewValue";
}
关于c# - 使用 MSBUILD API 更新 *.CSPROJ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4993741/