我想阅读,修改和写回csproj文件.
我发现了这段代码,但不幸的是引擎类被折旧了.
我发现了这段代码,但不幸的是引擎类被折旧了.
Engine engine = new Engine() Project project = new Project(engine); project.Load("myproject.csproj"); project.SetProperty("SignAssembly","true"); project.Save("myproject.csproj");
所以我继续根据提示我应该使用Evaluation.ProjectCollection而不是Engine:
var collection = new ProjectCollection(); collection.DefaultToolsversion = "4.0"; var project = new Project(collection); // project.Load("myproject.csproj") There is NO Load method :-( project.FullPath = "myproject.csproj"; // Instead of load? Does nothing... // ... modify the project project.Save(); // Interestingly there is a Save() method
没有Load方法了.我试图设置属性FullPath,但项目似乎仍然是空的.错过了什么?
(请注意我知道.csproj文件是带有XSD架构的标准XML文件,我知道我们可以使用XDocument或XmlDocument来读/写它.这是一个备份计划.只需看看.Save()方法就可以了.项目类我认为如果我无法加载现有的.csproj,我会错过一些东西.thx)