c# - 手动创建 VisualStudio 2012 项目文件

标签 c# visual-studio visual-studio-2012 project thrift

我在 Visual C# 中使用 thrift。

Thrift 可以选择编译为 C#,但是,当许多 C# 项目都在使用 thrift 时,逐个添加和删除由 thrift 生成的新源是很累的——将 thrift 编译为 C# 只会为每个 thrift 结构创建一个 .cs 文件.

我考虑过编写简单的应用程序,该应用程序将使用新生成的 thrift 文件创建/更新 Visual Studio 2012 项目文件。是否有任何工具/库可以帮助解决这些问题?从空项目中获取现有项目文件、更改 GUID 并仅修改文件列表是否安全?

最佳答案

使用 Microsoft.Build.Construction 命名空间中的类这应该相对容易。

您从 ProjectRootElement 开始,它是通过打开现有文件(方法 Open)或创建新文件(方法 Create)获得的。或者您可以使用单个文件作为模板并始终从该文件开始(仅设置一个新的 GUID 确实是安全的)。

然后只需找到包含源文件(即具有“编译”项的文件)的 ProjectItemGroupElement 并向其添加文件即可。

与设置新 GUID 类似,您查找名为“ProjectGuid”的 ProjectpropertyElement 并使用 Guid.NewGuid().ToString( "B").

保 stub 元素并完成。

( link to msdn docs )

关于c# - 手动创建 VisualStudio 2012 项目文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15357515/

相关文章:

c# - '+='的含义

c# - ASP.NET Core 模型是否有类似 OnDelete 回调之类的东西?

c# - 使用基于 DLR 的语言而不是 C# 来执行脚本任务的原因是什么?

c++ - Visual Studio C++ 2012 和 2017 在随机数生成中显示不同的行为?

c++ - 无法将Visual Studio解决方案升级到2013

c# - Enumerator.MoveNext() 的奇怪行为

visual-studio - 在同一解决方案中处理 C# 和 VB.net 项目

c# - Visual Studio 错误 CS0433 : The type exists in both. .. (Unity-Accord.net)

mysql - DataGridView 中的 DataGridViewComboBoxColumn

razor - 如何更改Visual Studio 2012 Razor 颜色