繁体   English   中英

是否有用于以编程方式更改项目和解决方案文件的API(.vbproj,.csproj,.sln)?

[英]Is there an API for programmatically altering Project and Solution files (.vbproj, .csproj, .sln)?

我们手工维护了大量的.NET项目和解决方案文件; 这是丑陋乏味的,应该是自动化的。 这些文件都是XML,因此为我们的目的编写工具并不难,但我想知道是否有人知道VS或TFS API对象可以让我使用这些文件作为对象而无需创建我自己的类。

出于我们的目的,我们需要确保所有项目符合许多标准: - 基址 - 自定义构建类型 - 每种构建类型的特定属性 - 自定义“构建后”操作

我已经找到了用于在Visual Studio中加载项目时使用的API,并且正在权衡为我们的需求编写加载项的选项 - 但理想情况下我希望能够直接反序列化对象从文件; 检查它是否符合要求; 根据需要进行更改并将对象序列化回文件。

fyi:如果你正在寻找相同的东西让我知道; 我有兴趣在下班后写这篇文章并在CodePlex上分享。 为了我的目的,TFS会有一些钩子,但我也想创造一些对他人有用的东西。

本地架构缓存中获取msbuild.xsd并在其上使用xsd.exe

如果要添加对自定义生成任务的支持,请使用MSBuildSchemaGen首先为任务程序集创建自定义XSD。

如果xsd.exe的输出不能让您感觉良好,请使用XsdTidy来改进它。

由于是XML,您可以通过调用XML .NET Classes等开发一个工具来完成您所需的工作并更改您喜欢的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM