如何在引用装配版本更改时打破构建? -- c# 领域 和 visual-studio-2010 领域 和 compiler-construction 领域 和 msbuild 领域 和 sitecore 领域 相关 的问题

How to break the build when referenced assembly version changes?


简体版||繁體版
0
vote

问题

中文

我有一些c#,它修复了已经修复的问题,该问题已在Sitecore CMS的较新版本中修复。

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

如果引用的装配版本更改(即高于v6.5.x),可以在此部分代码中打破构建或以其他方式引起注意?围绕 #error 指令可能有效,但我不知道它是否可以指的是引用的装配版本?

请注意,我希望这可能发生在构建时,而不是运行时,并专门提请注意所讨论的代码,以便可以审查它。

英文原文

I have some C# which fixes an issue that is already fixed in a newer release of Sitecore CMS.

I want the fix to be removed if and when we upgrade to the newer version, but that may be some time in the future, and the presence of this fix would be easily forgotten.

Is it possible to break the build or otherwise draw attention to this section of code when the referenced assembly version changes (i.e. higher than v6.5.x) ? A conditional around an #error directive may work, but I don't know if or how this can refer to a referenced assembly version?

Note that I'm hoping this can happen at build-time, not runtime, and specifically draw attention to the code in question so that it can be reviewed.

              

回答列表

0
 
vote

肯定是这样做,你需要做的就是确保你的项目有"具体version" 标志设置为true,因为这引用了这个引用?

 

Surely to do this all you would need to do would be to make sure your projects have the "SpecificVersion" flag set to true for that reference?

 
 
       
       
0
 
vote

如何在Visual Studio中使用后构建(或预构建我假设)事件?您可以运行PowerShell脚本或将检查您的装配版本的东西,并提醒您装配版本已更改。

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

构建事件的信息...... http://msdn.microsoft.com/en-us/library/kay5z92ks.aspx

 

How about using a post-build (or pre-build I suppose) event in Visual Studio? You could run a powershell script or something that will check your assembly version and alert you that the assembly version has changed.

A bit ugly but I think it will work.

Info on build events... http://msdn.microsoft.com/en-us/library/ke5z92ks.aspx

 
 
0
 
vote

虽然以下解决方案无法在构建时运行,但您可以在健康检查中使用单元测试(假设您正在使用单元测试执行CI)。

您编写一个单元测试以测试该代码。确保单位测试断言Sitecore DLL参考的版本。单位测试运行时,您的健康检查构建将失败。

甚至可以使用此办理登机手续,以确保在没有该单元测试通过的情况下无法办理登机手续。

 

While the following solution won't run at build-time, you could do this with unit tests in your health check (assuming you are doing CI with unit tests).

You write a unit test to test that piece of code. Make sure the unit test asserts the version of the Sitecore DLL reference. Your health check build will fail when the unit test runs.

You could even gate the check-in with this to make sure nobody could check in without that unit test passing.

 
 

相关问题

0  如何使用玻璃映射器和Sitecore设置延迟装载  ( How to set up lazy loading with glass mapper and sitecore ) 
我已被客户提出要求设置Sitecore项目的延迟加载。它是一个带有玻璃贴图5.3.15的9.1项目。据我所知,默认情况下,使用GlassMapper启用延迟加载,但网站清楚地没有利用它。在项目中没有leazedisabled()没有Isntances(),但它正在利用Sitecore的缓存功能,因此我想知道这是否可能...

2  Sitecore:Sitecore域用户的统计数据  ( Sitecore statistics on sitecore domain users ) 
我正在使用Sitecore 8更新2。 我正在寻找一种方法来了解有关有多少Sitecore用户登录的统计数据(随着时间的推移,而不仅仅是现在)。 主要是我想看看在系统上工作的实际人数是否接近许可证允许的最大用户量。否则公司可能会严重过度付款。 已有开箱解决方案或用于此功能的模块? ...

0  Sitecore如何知道工作流程是否已完成(批准状态和已发布)  ( Sitecore how to know if workflow process is done approved state and published ) 
我想知道工作流程是否已完成。 我想做的是: 我创建了一个程序集,一旦工作流程进入最终状态或完成自动发布工作,请在程序集中执行该方法。 <?xml version="1.0" encoding="UTF-8"?> <configuration xmlns:patch="http://www.sitecore.net...

2  在Sitecores高级系统记者有办法选择报告中的所有项目吗?  ( In sitecores advanced system reporter is there a way to select all items in the ) 
在Sitecore Advanced System Reporter模块有一些方法可以选择报告中的所有项目吗?我只能弄清楚如何一次选择一个项目。 ...

7  升级到Sitecore 8后,在内容编辑器上获取错误  ( Getting error on content editor after upgrading to sitecore 8 ) 
我已经从 sitecore 7.5 到 sitecore 8 ,我在尝试访问内容编辑器时得到一个错误。 服务器错误在'/'应用程序中。 值不能为null。 参数名称:fieldnametranslator 描述:在执行当前Web请求期间发生未处理的异常。有关更多信息,请查看堆栈跟踪 有关错误的信息,它源自...

0  玻璃映射器渲染线语语言嵌入  ( Glass mapper renderlink language embedding ) 
在Sitecore 8中,我们目前正在使用玻璃映射器的@RenderLink方法生成菜单项。我们将LinkManager提供商的"LuinialEmbeddings" 属性设置为"永远不会" ,但玻璃似乎忽略了此设置。 $RenderLink(mi, x => x.Link_URL); 创建 http:...

2  Sitecore.Context.Item Null在回发  ( Sitecore context item null on postback ) 
我正在继承Sitecore实现,我一直在尝试调试成员表格。成员资格页面包含一个包含一个简单表单的隶属uplayoutout(首先,最后一个,地址,......)。当我在我的本地机器上调试时,我填写表格并单击"提交" 。页面后面帖子后,一旦击中基本布局, Sitecore.Context.Item 是 NULL 。 有...

1  测试项目不在工作流程中  ( Test item is not in workflow ) 
使用Page Editor在组件上设置基本A / B测试时,我收到了在日志中出现以下内容的错误: undefined1 尝试开始测试在测试实验室中创建了一个带空工作流部分的多变量测试定义项 我认为当在页面编辑器上使用UI创建和开始测试时,应该适当地设置这些工作流字段。 我想我会尝试反射器在二进制文件中找...

8  构建TDS项目时的许可证异常无效  ( Invalid license exception when building tds projects ) 
我们正在使用几个TDS项目运行Sitecore 6.5,我一直在尝试获得TFS在我们的TFS构建服务器上工作。当项目尝试构建时,我们会收到以下错误: C:Program Files (x86)MSBuildHedgehogDevelopmentSitecoreProjectv9.0HedgehogDevelopm...

7  Sitecore项目:已创建VS项:添加  ( Sitecore itemcreated vs itemadded ) 
事件 item:created vs item:added 之间有什么区别?每个事件何时被命中? ...

1  如何使用Sitecore 6.6解决内容传递(CD)服务器的会话问题?  ( How to solve session issue on content delivery cd server using sitecore 6 6 ) 
在项目中(使用Sitecore Version 6.6和ASP.NET WebForms构建)我在内容传递(CD)服务器上遇到奇怪的会话丢失问题。我使用关键字ASP.NET和会话丢失在此主题上忘记了。我发现了很多有趣的东西,但不是解决方案。 与此同时,我想出了这个问题的原因几乎不可能是申请池回收或在Sitecore...

0  将值插入CRM动态  ( Inserting value into crm dynamics ) 
如何从Sitecore WFFM插入值WFFM窗体查找字段到CRM动态中的查找字段?我能够从WFFM获取GUID表单中的值,但它未插入CRM动态。为什么?? public void Execute(ID formid, AdaptedResultList fields, params object[] data...

0  如何完成基于LDAP的SSO?  ( How can ldap based sso between net and php systems be done ) 
我一直在使用灯系统,所以我对MS技术相对不知不觉。我们拥有一个带有由.NET CMS提供支持的现有网站的客户,称为Sitecore。他们希望使用我们的一个产品,这是另一个由灯技术供电的网络系统。为简单起见,假设如果您键入site.com,则会在网站的Sitecore部分结束,如果您键入app.site.com,您将到...

5  营销人员的WebForm动态地形成了字段条件可见性  ( Webforms for marketers form fields conditional visibility dynamically ) 
我们正在使用WFFM创建登陆页面。我们的营销人员很容易使用它。现在,我们正在寻找定制它们。例如,我们有以下要求。 在我们的表单上,我们展示居住国,但是当您选择一些国家时,我们希望与各州展示一个名为 9988877665 的下拉目。当用户选择其他国家/地区时,我们必须隐藏 99887666 字段。我敲打了我的头,我该如...

8  问题与Sitecore计划任务 - 即使任务没有运行,上次运行时更新?  ( Issue with sitecore scheduled task last run time updates even though the task ) 
我在Sitecore内容编辑器中设置了一个计划的任务,该任务设置为5分钟运行。 20100901T235900 | 20200101T235900 | 127 | 00:05:00 我在web.config中设置的频率是每分钟检查。 <frequency>00:01:00</frequency> <agent t...

6  将MVC Web迁移到Sitecore的最佳实践  ( Best practice for migrating mvc web to sitecore ) 
我们有几个MVC 3.0 Web应用程序中的一些网页形式和MVC3.0在项目/解决方案中组合。 我很安静的是Sitecore,有人可以帮助我在将现有申请迁移到Sitecore的情况下,请帮助我理解? 在哪种类型的方案中我们应该将mvc3.0剃须刀视图移动到sitecore? 将MVC3.0迁移到Sitecor...

0  在XSLT中构建单独的1和2菜单  ( Building seperate level 1 and 2 menu in xslt ) 
我正在尝试在Sitecore 6到XSLT中创建一个简单的菜单。 当前有一个导航级别,显示了站点的第一级的所有菜单项。这有效。然后我有一个Level-2菜单,它显示了我正在开启的当前(或父级)级别的所有子项。 我将其作为2个单独的检查,因此它们与彼此没有链接(由于站点上的样式,级别1菜单项显示一个地方,级别2个项目显...

11  如何了解项目相关的Sitecore网站?  ( How to find out with which sitecore site an item is associated ) 
我们有一个多站点解决方案(站点1和站点2),我需要能够确定我们要获取URL的项目(在LinkProvider中,它是自定义的)属于当前上下文网站( Sitecore.Context.Site ),或者是不同站点的一部分。有没有好方法来做这个? 基本上,我们只需要能够找到项目相关联的网站。我们可以在该值与当前上下文网站...

2  网站显示Sitecore登录页面  ( Website shows sitecore login page ) 
我们刚刚与使用Sitecore的新网站一起生活。在过去的几天里,我们已经听到了用户抱怨他们正在看到实时网站上的Sitecore登录页面,了解他们添加的链接或仅随机。我们正在使用负载均衡器,其中包含3个服务器的负载平衡器。此外,创作服务器位于防火墙后面,创作界面仅通过VPN访问。 任何想法/建议? 感谢 ...

2  在Sitecore 6.2中伪造用户角色  ( Faking user roles in sitecore 6 2 ) 
sdn中的伪造用户角色文档出现在sdn中确切地给出了我所需要的。我有几个"角色" ,我可以通过存储过程调用我没有控制,只能通过CRM访问,我没有直接访问。 不幸的是,我无法找到该方法addRole,甚至是类UserItem,其目前的名称。此功能是否存在于Sitecore 6.2中?如果是这样,它在哪里? ...

1  如何以编程方式在Sitecore的项目下插入空的文件夹,其中包含所需名称?  ( How to insert an empty folder with desired name under an item in sitecore progra ) 
我需要以编程方式在Sitecore节点下的每个部分(内容,布局,渲染,Medialibrary,模板)中创建空文件夹。 请告知。 ...

3  避免媒体库中的100个项目限制  ( Avoiding 100 item limit in the media library ) 
我们有一个项目,我们在Sitecore中存储用户配置文件照片。我们的用户群将与LDAP集成(意味着我们将拥有成千上万的用户,如果不是更多的用户,则将首次创建配置文件。用户将能够以后更改其个人资料照片,我们有一个自定义的Sitecore配置文件,它具有存储个人资料照片媒体项的ID的属性。 我想要做的是找出一种方法来避...

1  Sitecore Lucene索引目录存在,但没有段文件  ( Sitecore lucene index directory exists but no segments files ) 
在这个SDN文档(PDF),我向Sitecore 6.3网站(否则我认为)添加了一个定制的Lucene索引: 在 <indexes> 部分 web.config 中,我添加了我的索引定义: &lt; indexes&gt; ...... &lt; index id ="网站" singleinstanc...

2  保持Sitecore Lucene指数最新  ( Keeping sitecore lucene indexes up to date ) 
我有一个Sitecore应用程序,它通过Sitecore的内置API创建并使用许多Lucene索引。 我需要确保索引中的项目在发布时保持最新。为此,我创建了一个Sitecore挂钩,检测何时且项目保存到"Web" 数据库并重新筛选项目。它似乎在大多数情况下工作,但似乎不时失败。 钩子中的代码看起来像: item...

0  Sitecore 7分析以编程方式增加参与价值  ( Sitecore 7 analytics increase engagement value programatically ) 
我正在努力在7.2中实施Sitecore DMS,我有一个主要问题,因为我似乎有很难找到答案的困难。我有一些目标和活动设置,我试图通过分析API设置一个。该事件在PageEventID数据库中被记录,但我正在尝试做的是向当前访问/访问者添加订婚价值。 我希望更新访问数据库中的值字段以进行当前访问。以下是我目前正在使...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有