我正在我们的 TFS 服务器中创建自定义流程模板。
我想在此过程中执行以下行,以根据当前的 MMDD 自动修改 AssemblyInfo.cs 中的程序集修订号:
File.WriteAllText(file, Regex.Replace(File.ReadAllText(file), "(?<=\[assembly: AssemblyFileVersion\(""[0-9]*.[0-9]*.[0-9]*.)[0-9]*(?=""\)\])", Function(m) DateTime.Now.ToString("MMdd")))
不幸的是,我不知道如何在构建过程中执行任意行的 VB.NET 代码。没有称为“执行”、“运行”等的代码活动。
我试图通过在 WriteBuildMessage() 调用中插入一个 lambda 函数来破解它,但发现不允许使用 lambda:
(编辑:在修复了该表达式的其他问题后,它现在只是给出了错误:“语句 lambdas 无法转换为表达式树” - 因此我无法在这里做我想做的事情。如果“File.WriteAllLines " 是字符串而不是 void 然后我可以返回它并大笑。)
有没有一种方法可以在构建过程中执行任意行的 VB.NET 代码?