0

我有一些C#修复了Sitecore CMS新版本中已经解决的问题。如何在引用程序集版本更改时中断构建?

我希望修复程序在我们升级到新版本时被删除,但这可能是将来的某个时间,并且此修复程序的存在很容易被遗忘。

当引用的程序集版本发生变化(即高于v6.5.x)时,是否有可能中断构建或引起对此段代码的注意?有关#error指令的条件可能会起作用,但我不知道这是否可以引用汇编程序版本?

请注意,我希望这可以发生在构建时,而不是运行时,并特别提请注意有问题的代码,以便它可以被审查。

回答

0

当然,要做到这一点,您需要做的只是确保您的项目的“SpecificVersion”标志设置为true,以供参考?

+0

”请注意,我希望这可以在构建时发生,而不是运行时,并且特别提请注意有问题的代码,以便可以对其进行审查。“ –

+0

据我所知,设置一个特定的版本要求将导致构建失败时,引用的程序集的版本已更改,而不是在运行时。 – Joeb454

+0

更多第二部分 - 它没有引起任何关注的代码。它只是打破。 –

0

在Visual Studio中使用post-build(或pre-build I suppose)事件怎么样?你可以运行一个powershell脚本或者一些会检查你的程序集版本的东西,并提醒你程序集版本已经改变了。

有点丑,但我认为它会工作。

上生成事件信息...... http://msdn.microsoft.com/en-us/library/ke5z92ks.aspx

0

虽然下面的解决方案在编译时将无法运行,你可以在你的健康检查做单元测试(假设你正在做的CI单元测试)。

你写一个单元测试来测试这段代码。确保单元测试声明了Sitecore DLL引用的版本。单元测试运行时,您的健康检查版本将失败。

你甚至可以用这个办理登机手续,以确保没有该单元测试通过,任何人都无法办理登机手续。 “

相关问题