Sitecore的包含文件的排序顺序破(Sitecore Include Files sort or

2019-10-19 05:07发布

突然,我的Sitecore的网站Lucene索引得到打破,经过一番调查,我发现Sitecore的包括文件是在非字母顺序“打补丁”的web.config。

约翰·韦斯特HIST博客文章中提及了:

Sitecore的处理的Web.config包括文件按字母顺序(从技术上讲,该命令由所述Directory.GetFiles()方法返回)。

但是,MSDN说:

返回的文件名(()从GetFiles的)的顺序没有保证; 使用排序()方法,如果需要特定排序顺序。

什么会引起那样的问题? 它说的是与服务器相关的配置?

Answer 1:

我有一个绝招,如果你需要确保你自己的配置包括:总是包含在所有的其他包含文件,您可以使用。
确保所有的默认和供应商.config文件被直接定位在/App_Config/Include文件夹,然后创建在你把你自己的一个子文件夹中包含文件,例如/App_Config/Include/Custom/MyConfig.config

这样,你的配置包括:总是加载最后因为从顶层文件夹中的文件总是被第一个返回Directory.GetFiles()方法。



Answer 2:

Plase检查此链接 。 返回的文件名的顺序没有保证; 使用排序()方法,如果需要特定排序顺序。 它说,在MSDN上。

但我知道,当你想修补补丁,该文件的命名是很重要的。 例如:您可以修补Sitecore.ContentSearch.Lucene.DefaultIndexConfiguration.config

通过创建一个新的名为配置文件Sitecore.ContentSearch.Lucene.DefaultIndexConfigurationPatch.config那么这将被包含在原来的右后最终web.config部分, Sitecore.ContentSearch.Lucene.DefaultIndexConfiguration.config.

您可以与配置文件检查你的修改:

hostname/sitecore/admin/showconfig.aspx


文章来源: Sitecore Include Files sort order broken