MSbuild 用于更新 assemblyinfo 文件

2024-04-18

我正在编写一个批处理文件来自动执行一系列任务。其中一项任务是通过编辑解决方案中各个项目中的 assemblyinfo.cs 文件来更新解决方案中的 dll 版本;然后最后调用 msbuild.exe 来编译解决方案。

在这方面,是否可以编写一个命令行脚本来更新我的.net解决方案中的各种 assemblyinfo.cs 文件。我更愿意从命令行本身调用 msbuild,而不是创建另一个 msbuild 脚本文件。

如何使用 MSBuild 做到这一点?还有其他方法吗?

谢谢你的时间...


如果没有其他工具的帮助,使用 dos cmd 批处理文件编辑文件是相当麻烦的。 您需要使用类似 for /f 命令的命令来单步执行这些行,然后处理每一行。例如,查找以“[ assembly: AssemblyVersion”开头的行 并用其他东西替换它。

但是,如果您的 AssemblyInfo.cs 中没有太多内容(请记住,如果需要,您可以将 AssemblyInfo.cs 拆分为多个 cs 文件),我建议您使用几个 echo 语句从头开始创建该文件。

如果您有其他可用工具(例如 sed.exe),则可以轻松完成编辑。

这些天我更喜欢使用一个简单的 powershell 脚本,它可以把它当作早餐,并让你在需要时可以访问 .Net 库。

这是它的模板形式:

(Get-Content AssemblyInfo.template.cs) -replace "{version}","1.2.3.4" > AssemblyInfo.cs

这是一个使用正则表达式来替换其中的任何版本号的表单:

$x = 'Version("{0}")' -f "1.2.3.4"
$content = Get-Content AssemblyInfo.cs
$content -replace 'Version\(".*"\)',$x > AssemblyInfo.cs
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MSbuild 用于更新 assemblyinfo 文件 的相关文章

  • LINQ:获取表详细信息

    我正在使用 LINQPad 我想了解表的架构详细信息 我知道我是用 SQL 来做的 SELECT column name FROM information schema columns WHERE table name table name
  • 有人有 Postsharp 制作经验吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何使用.net更改selenium中的用户代理

    我想使用不同的代理 iPhone iPad Android 测试用 NET 编写的 Web 应用程序 我使用 NUnit 和 Selenium 进行测试 有人有一个用 c 或 VB 在 Selenium 中更改代理 例如 iPad 或 iP
  • WCF - 如何增加消息大小配额

    我有一个 WCF 服务 它将 1000 条记录从数据库返回给客户端 我有一个 ASP NET WCF 客户端 我在 asp net Web 应用程序项目中添加了服务引用来使用 WCF 当我运行客户端应用程序时 我收到以下消息 传入消息的最大
  • “为 .Net 1.1 生成 Web 服务代理的任何工具”

    我有一个 WSDL 文件 其中包含指向外部 XSD 的链接 我也将 xsd 部署到了正确的相对路径 因为它在 WSDL 中是引用的 当我尝试使用 VS 2003 Net 1 1 wsdl 工具 生成代理时 代理未生成 然而它在 VS 200
  • 创建仅包含枚举的 COM 库时出现问题

    我正在做一个 COM 互操作项目 用 C 和 NET Interop 替代一些 VB 和 C ATL COM 项目 当我在 NET 中定义枚举并将它们设为 ComVisible 时 它 们会公开为 Typelib EnumType Enum
  • MSBuild 未使用所有核心进行构建

    我有一个使用 Visual Studios 2008 配置的项目 当我打开 IDE 并点击构建时 系统上的所有核心都用于构建该项目 但是 当我尝试从命令行构建时 仅使用 1 个核心 这是我正在运行的命令 C Windows Microsof
  • VB.NET 是否优化字符串文字的串联?

    如同this https stackoverflow com questions 288794 does c optimize the concatenation of string literals问题 但对于 VB NET 来说 因为我
  • 从 git 签出后 nuget dll 丢失

    I have a C solution containing different projects On those projects I have some normal nuget packages like Newtonsoft Js
  • C#“var”关键字在 VB.NET 中的等价物是什么?

    例如 我如何获得 VB NET静态类型局部变量是static赋值右侧的表达式的类型 像这样 Dim http msdn microsoft com en us library 7ee5a7s1 aspx我的变量 3 你还需要 选项推断 ht
  • 您使用的 ORM 框架的最佳功能是什么[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • C# - 挂钩现有 COM 对象

    假设我们有一个现有进程 或应用程序 它从 ocx 文件 例如 MyCOMLibrary ocx 调用 COM 对象 有没有办法编写一个 C 库来精确复制 ocx 文件 这样原始应用程序就可以调用您的 C 代码而不是原始 COM 对象 当然
  • 如何将 Excel 中的图表导出为图形

    我有一系列 Excel 电子表格 每个电子表格至少包含一页数据和一页根据数据创建的图表 我需要捕获 不从数据中重新生成 将现有图表作为网络友好图像 这可以通过 Java 或 Net 实现吗 我知道 POI 的东西 Java 不会这样做 或者
  • 如何让 XDocument.Load 保留换行符

    using System IO StreamReader sr new System IO StreamReader path System Text Encoding GetEncoding Windows 1252 true xdoc
  • WCF 和数据契约上的接口

    使用 svcutil 创建 WCF 代理时 是否还可以包含数据协定继承的接口 例如 public class SomeType ISometype public string Name get set public interface IS
  • 导入 IronPython 的嵌入式库

    我已通过 NuGet 将 IronPython 标准库添加到我的 c net4 项目中 后来获得了一些参考资料 IronPython IronPython Modules IronPython SQLite IronPython Wpf M
  • File.Exists("") 和 FileInfo 存在有什么区别

    我在 Program Files x86 MyApp 文件夹中有一个 exe 文件 在 x86 应用程序中 我检查文件是否存在 64 位系统 简单的 bool fileExists File Exists ProgramFiles x86
  • List、IList、IEnumerable、IQueryable、ICollection,哪个返回类型最灵活?

    我之前已经在这里看到过这个问题 但我不满意我理解的完整后果 问题是使用 linq to sql 返回的数据层应该使用什么返回类型以获得最大的灵活性和查询能力 这是我读过 发现的 IEnumerable 是有限的 只允许向前读操作 IEnum
  • 如何通过覆盖 MSBuild 目标来防止外语资源生成?

    我正在致力于减少大型 C ASP NET 解决方案的编译时间 我们的解决方案使用通常的 resx 文件方法翻译成大约十几种外语 这些资源文件的解析和编译极大地减慢了我们的编译时间 并且是日常的挫败感 我知道可以创建自定义资源提供程序并摆脱
  • 使用 OleDbCommand / OleDbDataAdapter 读取 CSV 文件

    我不明白为什么 但是当我使用 OleDbDataAdapter 或 OleDbCommand 读取 CSV 文件时 在这两种情况下 生成的数据结构良好 它识别文件头中的列 但行数据都是空字符串 我之前已经成功进行过多次 CSV 处理 因此我

随机推荐

  • 检测 YouTube 视频何时播放完毕

    如何在官方 YouTube Android 应用程序中检查 YouTube 视频何时播放完毕 在 LogCat 中 我看到以下内容 VideoStage MEDIA PLAYING VIDEO 有什么方法可以检测到什么时候完成吗 你可以使用
  • 最高序数枚举值

    我正在寻找从 bean 列表中的枚举属性列表计算最高序数枚举值 例如 我有 Data public class MyBean private Priority priority and public enum Priority URGENT
  • python字典日期时间作为键,keyError

    我正在尝试在 Linux 中使用 cron 运行 Python 脚本 它应该构建一个数据字典 我正在尝试使用datetime now time 作为字典中的键 但它似乎会引发错误 不可以datetimetype 可以用作Python 中的字
  • 在 ASP.NET MVC ViewModel 中存储模型 ID,安全问题

    在我的 MVC 应用程序中 我有一个页面供用户编辑其帐户详细信息 例如电子邮件地址 密码等 在我的数据库中 用户表保存此数据 主键是 UserId 在我创建的 ChangeAccountDetails 视图上 我传递了一个 ViewMode
  • delphi 文本矩形 自动换行

    我在 Delphi 7 中使用 Canvas TextRect 在屏幕上输出一些内容 我需要将文本包裹在矩形中 您需要使用带有 DT WORDBREAK 标志的 DrawText 或 DrawTextEx 请参阅中的示例
  • 为什么 Rails 将 TEXT 列截断为 65535 个字符?

    我正在使用 Ruby on Rails 将原始电子邮件保存在 MySQL 的 TEXT 列中 它不断被截断为 65535 个字符 有人知道是什么原因造成的吗 MySQL 正在运行max allowed packet 64M 使用InnoDB
  • Access 中的 Sqlite 链接表再次给出 #deleted 值

    情况 MS Access 恰好是 2010 年 使用 SQLite ODBC 驱动程序 0 997 链接到 SQLite 3 x 数据库中的表 问题 所有行中所有列中的数据值显示为 Deleted 解决方案 这是一个 回答我自己的问题 类型
  • VS Code SSH 远程连接问题

    过去一个月 我一直在使用 VS Code 并在 MacBookPro 上从家里远程连接来处理一个大学项目 但由于某种原因 它不再连接到计算机实验室服务器 不知道为什么会发生这种情况 但它今天停止工作了 我尝试重新安装 vs code 并将其
  • 是否可以在不打开 CSV 文件的情况下获取其行数?

    我有一个大小约为 1 GB 的 CSV 文件 由于我的笔记本电脑配置基本 我无法在 Excel 或 R 中打开该文件 但出于好奇 我想获取该文件中的行数文件 如果我能做到的话 我该怎么做呢 对于 Linux Unix wc l filena
  • 导致 SAXException2 的原因:“com.foo.Bar”的实例正在替换“java.lang.Object”,但“com.foo.Bar”绑定到匿名类型[重复]

    这个问题在这里已经有答案了 将现有 jaxb 同时使用 jaxb1 0 1 和 jaxb 2 0 5 应用程序 在带有 jdk5 的 JBoss 4 3 上 迁移到 jaxb 2 1 10 随 jdk6 提供 更新 jdk1 6 0 30
  • 对于单个开发人员来说,在云中存储 Mylyn 任务的最佳连接器是什么?

    我想使用 Mylyn 以任务为中心的用户界面 但我经常在两台电脑之间工作 并且不想购买任何错误跟踪软件 有人可以推荐一个适合我的情况或其他更适合的工作流程的 Mylyn 连接器吗 我可以推荐你使用福格林连接器 http www foglyn
  • 带测试的 Java 代码 - 无限循环?

    我尝试去了解人与人之间的关系 但是 当我运行单元测试时 测试会永远运行 没有得到结果 而且我的 CPU 使用率很高 有人能看出我的代码有什么问题吗 字符串关系是字符串的多行输入 格式为 A B C D where A是的父级B and C是
  • 可以处理超过 5 亿行的数据库

    我正在寻找一个可以处理的数据库 在合理的时间内在列上创建索引并提供结果选择查询在不到 3 秒的时间内 超过 5 亿行 低端机器 Core 2 CPU 6600 4GB 64 位系统 Windows VISTA 上的 Postgresql 或
  • PacketTunnelProvider 网络扩展不称为 Swift 3

    我正在尝试将 PacketTunnerProvider 网络扩展添加到我的项目中 方法 startTunnelWithOptions options String NSObject completionHandler NSError gt
  • React Router v4 基本名称和自定义历史记录

    我想为我的路由分配一个基本名称 我可以使用 BrowserRouter 来实现 不过 我还想指定自定义历史记录 以便我可以以编程方式导航我的用户 我可以用路由器做到这一点 然而我不能两者都做 是否可以扩展其中一个路由器以支持此功能或围绕其包
  • 找到正确的正则表达式

    我正在尝试为这种情况找到正确的正则表达式 1 1 0 我需要版本之间的前缀和后缀 可以是一切 字母 数字或什么都没有 我拥有的 static check version string return d d d test version 感谢
  • 仅当上一步已运行时才运行 GitHub Actions 步骤

    我已经在 GitHub actions 中设置了一个工作流程来运行我的测试并创建测试覆盖率的工件 我的 YAML 文件的精简版本如下所示 name Build on pull request jobs build runs on ubunt
  • 使用“r+”模式用相同长度的另一行覆盖文件中的一行

    我有一个名为vegetables carrots苹果 黄瓜 我想要做的是在 python 中打开文件 并就地修改它 而不覆盖文件的大部分 具体来说 我想覆盖apples with lettuce 这样该文件将如下所示 carrots莴苣黄瓜
  • 您能否从 YouTube Live Streaming API 获取环聊直播加入 URL?

    As the Google Hangouts API 已关闭 https developers google com hangouts support faq 我该如何使用YouTube 直播 API https developers go
  • MSbuild 用于更新 assemblyinfo 文件

    我正在编写一个批处理文件来自动执行一系列任务 其中一项任务是通过编辑解决方案中各个项目中的 assemblyinfo cs 文件来更新解决方案中的 dll 版本 然后最后调用 msbuild exe 来编译解决方案 在这方面 是否可以编写一