有 MSBuild 替代方案吗?

2023-12-01

**我是一名正在接受培训的学生,对 C# 的经验很少。 我们公司正在开发一个使用T4模板(C# VS2010)的解决方案。 生成的文件无法在 MSBuild 下编译,因为它依赖于 VS。 我的任务是找到一个工具或库或.dll 文件或SDK 或任何可以在构建时间替代VS 的东西。否则我必须修改生成的代码以使其独立于我自己,我认为这对我来说是一项艰巨的任务。 代码样本:

Project GetProjectContainingT4File(DTE dte) {

// Find the .tt file's ProjectItem

ProjectItem projectItem = dte.Solution.FindProjectItem(Host.TemplateFile);

// If the .tt file is not opened, open it

if (projectItem.Document == null)

    projectItem.Open(Constants.vsViewKindCode);

if (AlwaysKeepTemplateDirty) {

    // Mark the .tt file as unsaved. This way it will be saved and update itself next time the

    // project is built. Basically, it keeps marking itself as unsaved to make the next build work.

    // Note: this is certainly hacky, but is the best I could come up with so far.

    projectItem.Document.Saved = false;

}

return projectItem.ContainingProject;

}

我将感谢您的帮助。**


限制

生成的文件无法在MSBuild下编译,因为它是VS依赖的

看起来很奇怪。为什么您会以 .NET 环境为目标,但希望您的构建环境独立于 MS?当然,您至少需要一个 C# 编译器。

如果你真的想使用 MSBuild 之外的东西,还有很多替代品,例如 Mono 的微软构建甚至为 Windows 制作.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有 MSBuild 替代方案吗? 的相关文章

  • 如何处理 Web API 中的可选查询字符串参数

    我正在编写一个 Web API 我希望了解处理可选查询字符串参数的最佳方法是什么 我有一个定义如下的方法 HttpPost public HttpResponseMessage ResetPassword User user var que
  • 正式支持 MonoTouch 的 NoSQL 数据库

    我无法通过设备上的本地数据库找到正式支持 MonoTouch 的 NoSQL 数据库 如果是的话 有人可以在这里提供他们的名单吗 根据http nosql database org http nosql database org 有siaq
  • 如何根据 DataAnnotation 中的另一个属性验证一个属性

    考虑我有这两个属性 public class Test Required ErrorMessage Please Enetr Age public System Int32 Age get set Required ErrorMessage
  • 如何在 Mono 中运行 MVC3 或更新的应用程序

    默认 ASP NET MVC 3 应用程序是使用 Microsoft Web Developer Express 2010 创建的 应用程序发布到文件系统并复制到安装了 mono 2 10 8 Apache 和 mod mono 的 Deb
  • 仅将唯一项目添加到列表中

    当远程设备通过网络宣布自己时 我将其添加到列表中 我只想将之前未添加过的设备添加到列表中 这些公告是通过异步套接字侦听器发出的 因此添加设备的代码可以在多个线程上运行 我不确定我做错了什么 但无论我尝试什么 最终都会出现重复 这是我目前拥有
  • 实体框架代码首先迁移抛出错误

    这是我在收到此错误之前所做的操作 安装了 EF 预发布版本 可能是 6 我不知道 决定我不想要 所以卸载它并重新安装稳定版本 5 通过 SSMS 截断我的数据库 这是错误 Exception calling CreateInstanceFr
  • 反思 ExpandoObject

    我写了一个漂亮的函数 它将接受system object 反映其属性并将对象序列化为 JSON 字符串 它看起来像这样 public class JSONSerializer public string Serialize object o
  • ADO.Net (Azure AD) 错误“不支持关键字:身份验证”

    我正在尝试通过 C 代码使用 Azure AD 凭据连接到 Azure 数据库 代码如下 它在我的系统上运行良好 但是当我将它部署到32位VM时 它显示错误 不支持关键字 身份验证 VM 安装了 Net Framework 4 5 但未安装
  • 将异步结果分配给数据绑定属性

    下面是一个示例实现 它使用 Metro API 和数据绑定 使用 MVVM 来填充下拉列表中的文件夹列表 View 模型的构造函数使用 SetFolders 方法 私有异步 该方法调用可等待方法 fileService GetFolders
  • 在 C#4.0 中从字符串构建 Linq 查询 - 最佳实践

    目前 我正在使用 LinqKit Ms 动态查询示例从字符串动态构建 Linq 表达式 这很好用 LinqKit http www albahari com nutshell linqkit aspx http www albahari c
  • 使用反射设置枚举

    如何使用反射设置枚举 我的班级有枚举 public enum LevelEnum NONE CRF SRS HLD CDD CRS 在运行时我想将该枚举设置为 CDD 例如 我该怎么做 尝试使用类枚举 LevelEnum s LevelEn
  • 在 Silverlight 4 中编辑标题

    我们正在开发一个浏览器外的 Silverlight 4 应用程序 并希望在应用程序加载后更改标题 Example public partial class MainPage UserControl public MainPage Initi
  • 正则表达式 .net 分割

    我可以根据 2 个空格将字符串分成两部分 string Line 1 2 Regex Split Line gt 1 2 我想添加一个例外 仅当 未用 括起来 时才拆分 如此例所示 string Line 1 2 1 2 Regex Spl
  • 在 C# 中创建 Cron 作业

    我正在用 C 编写一个调度类型应用程序 并允许用户存储他们想要在特定时间运行的任务 现在 我为他们提供了指定运行频率 每日 每周 每月 以及指定时间的选项 然后将其存储在数据库中 我在理解其背后的伪代码时遇到了一些麻烦 并且正在寻找一些有关
  • BigInteger 乘以 Double

    我的物理老师给全班布置了一项艰巨的任务 我正在尝试创建一个程序来为我计算一些事情 在某个时刻 我需要将分子数量乘以百分比 Ulong 不能容纳大到 6022 10 19 的数字 所以我必须使用 net 4 0 中的 BigInteger 但
  • 为什么 lambda 可以将函数调用转换为 Actions?

    在此代码片段中 List
  • 根据列属性值获取属性值

    List
  • 如何从 ConcurrentBag<> 中删除单个特定对象?

    随着新ConcurrentBag
  • 类型“MyApp”已包含“MystatusBar”的定义

    我的应用程序 XAML
  • 使用 Linq 返回具有最大计数的列表

    使用 C 和 Linq 如何返回具有最大大小 计数的 List 我假设您有一个名为的列表集合lists并且您想要返回此集合中元素最多的列表 如果是这样 请尝试以下操作 var listWithLargestCount lists Order

随机推荐

  • 如何在片段内实现viewpager?

    我一直在寻找并很难找到一个明确的例子 我试图了解如何在从我的 mainActivity 作为抽屉项目打开的片段中创建视图分页器 这是我的尝试 但我认为我做错了什么 无论是我错误地包含它还是将它放在错误的位置 public class Ran
  • 如何根据组合框选择更改多个标签?

    我希望你知道如何根据不同的标签在不同的标签中拥有多个值Combobox下拉列表选择 例如 假设您有一个Combobox与值 car house computer 和多个Label选择时反映不同尺寸和颜色Combobox 如果我选择car 我
  • 极坐标图在 matplotlib 中给出错误的角度

    我正在尝试用Python绘制赤经 赤纬极坐标图 其中角度表示赤经 半径表示赤纬 范围在 30之间 我的代码是 import numpy import matplotlib pyplot as pyplot ra 345 3895474541
  • 无论如何,保持导航栏中的 Bootstrap Dropdown 打开

    我有一个嵌套在导航栏中的下拉菜单 我在页面加载期间通过添加以下内容打开该菜单open类到li包含下拉菜单的元素 我希望无论用户单击什么内容或单击页面上的哪个位置 此菜单都保持打开状态 我尝试过在 Stackoverflow com 上找到的
  • 如果添加另一个数据流,解析器无法解析

    我正在尝试使用解析器来根据路由保存的给定参数检索数据 不幸的是 当我添加另一个数据流时 我的数据依赖于解析器 但实际上从未解析 如果我直接返回一个立即解析值 一切都会正常 我调试了这种情况 发现我收到了所有部分信息 但最终未能真正解决 这是
  • 使用 compgen 获取另一个命令的自动完成功能,使用哪个标志?

    我有一个自定义自动完成命令 称之为commandA in commandB我想窃取命令第一个参数的自动完成选项 因此 例如 commandA 的 argument1 的选项是 abcdef abcabc abc123 我想要类似的东西com
  • ActiveMQ 的 NoSuchMethodError

    java lang NoSuchMethodError org apache activemq thread TaskRunnerFactory setThreadClassLoader Ljava lang ClassLoader V a
  • 侧面加载即时应用程序失败:读取捆绑包超时

    无法使用 Android 模拟器来测试即时应用程序 每次我得到 侧面加载即时应用程序失败 读取捆绑包超时 我在用着 Android Studio 3 0 金丝雀 5 Emulator 运行 Android 6 0 API 级别 23 x86
  • 如何使用流畅的 NHibernate 将枚举映射为 int 值?

    问题确实说明了一切 默认情况下它映射为string但我需要它映射为int 我目前正在使用PersistenceModel如果这有什么区别的话 我可以设定我的惯例 Update发现从主干获取最新版本的代码解决了我的困境 定义这个约定的方式以前
  • 如何从自定义视图(NSView)中制作缩略图视图?

    如何制作缩略图视图 不是图像 形成自定义视图 NSView 如果自定义 NSView 的内容发生更改 缩略图视图也会发生更改 看起来像ibook作者 谢谢大家 https plus google com u 0 photos 1147559
  • 用于生成唯一 ID 的 iOS 硬件参数

    您好 我想使用任何设备硬件参数为 iOS 设备生成一个唯一的 ID 我不想使用 MAC 地址 因为 MAC 地址也有可能被更改 那么您能否告诉我是否有任何其他唯一的硬件参数可以用来生成唯一的 ID 我相信类似的事情this是普遍接受的 UU
  • 无法对已卸载的组件执行 React 状态更新。这是一个无操作

    这是控制台中的警告 警告 无法对已卸载的组件执行 React 状态更新 这是一个空操作 但它表明应用程序中存在内存泄漏 要修复此问题 请取消 useEffect 清理函数中的所有订阅和异步任务 这是我的代码 const index setI
  • 将大型 XML 文件拆分为 Hadoop 的可管理部分

    是否有一个输入类可以根据 Hadoop 中的树结构处理 多个 大型 XML 文件 我有一组具有相同架构的 XML 文件 但我需要将它们拆分为数据部分 而不是分解这些部分 例如 XML 文件为
  • NHibernate 和数据库连接故障转移?

    我正在使用 NHibernate 连接到旧的 RDBMS 系统 在高生产负载下 rdbms 服务失败 为了保持可用性 我们提供了故障转移 RDBMS 服务 有没有办法将 NHibernate 配置为在主连接关闭时使用故障转移连接字符串 附加
  • 如何在 C 中通过 execv() 执行进程时杀死进程及其所有子进程?

    我正在尝试实施一个timeout类似命令unix基于操作系统如下 int pid timer t timer id struct sigevent timer event struct itimerspec timer value void
  • 所有 Android 设备中的蓝牙 RSSI 值始终以 dBm 为单位?

    我是 Android 新手 我的应用程序使用蓝牙从小型称重传感器放大器接收数据 虽然在某些设备 三星设备 中 BT 信号强度 RSSI 会按预期变化 从短距离处的 20 左右到 10m 处的 80 左右 但在其他一些设备 至少是一款 LG
  • 无法使用 cpan 在 darwin 13.0.1 上安装 GD 模块

    我在尝试安装 GD 时遇到了困难 我正在运行 Mas OSX 10 9 2 darwin 13 0 1 当我运行这个时 cpan 1 gt 安装 GD perl MCPAN e shell 我收到以下错误 cpan 1 gt install
  • 使用 MinGW 和 libnoise 库的 Netbeans C++

    使用 netbeans 7 2 和最新版本的 MinGW 使用安装程序 我无法使用 libnoise 库 我正确地包含了头文件 自动完成确认了这一点 但是该库根本无法工作 有一个 lib 文件和一个 dll 我尝试了在项目 gt 属性 gt
  • 替换 xml 属性的正则表达式

    我有一个以下形式的 xml 文件
  • 有 MSBuild 替代方案吗?

    我是一名正在接受培训的学生 对 C 的经验很少 我们公司正在开发一个使用T4模板 C VS2010 的解决方案 生成的文件无法在 MSBuild 下编译 因为它依赖于 VS 我的任务是找到一个工具或库或 dll 文件或SDK 或任何可以在构