简单的 sitecore 包含文件出错 ( ComputedIndexFields.config )
Simple sitecore include file gone wrong ( ComputedIndexFields.config )
我添加了一个 ComputedIndexFields.config 文件,代码如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<contentSearch>
<configuration>
<defaultIndexConfiguration>
<fields hint="raw:AddComputedIndexField">
<field fieldName="AppliedThemes" storageType="yes" indexType="TOKENIZED">be.extensions.AppliedThemes, be.extensions</field>
</fields>
</defaultIndexConfiguration>
</configuration>
</contentSearch>
</sitecore>
</configuration>
我还在上述组件中添加了一个class:
namespace be.extensions
{
class AppliedThemes : IComputedIndexField
{
public string FieldName { get; set; }
public string ReturnType { get; set; }
public object ComputeFieldValue(IIndexable indexable)
{
Item item = indexable as SitecoreIndexableItem;
if (item == null)
return null;
var themes = item["Themes"];
if (themes == null)
return null;
// TODO
}
}
}
这是添加计算索引字段的基础。然而,当我添加这 2 个文件时(class 文件中的代码从未到达),当我打开内容编辑器时出现以下错误:
SearchConfiguration 配置不正确。需要 ContentSearchConfiguration,但返回了 System.String。
没有这个简单的配置文件一切正常。
有人看到我在这里做错了什么或者知道我可以尝试解决这个问题吗?
编辑:我正在使用 Sitecore 8 更新 2
我认为您的补丁文件需要指向以下 XPath
/sitecore/contentSearch/indexConfigurations/defaultLuceneIndexConfiguration/fields
所以像这样:
<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<contentSearch>
<indexConfigurations>
<defaultLuceneIndexConfiguration>
<fields hint="raw:AddComputedIndexField">
<field fieldName="AppliedThemes">be.extensions.AppliedThemes, be.extensions</field>
</fields>
</defaultLuceneIndexConfiguration>
</indexConfigurations>
</contentSearch>
</sitecore>
</configuration>
我添加了一个 ComputedIndexFields.config 文件,代码如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<contentSearch>
<configuration>
<defaultIndexConfiguration>
<fields hint="raw:AddComputedIndexField">
<field fieldName="AppliedThemes" storageType="yes" indexType="TOKENIZED">be.extensions.AppliedThemes, be.extensions</field>
</fields>
</defaultIndexConfiguration>
</configuration>
</contentSearch>
</sitecore>
</configuration>
我还在上述组件中添加了一个class:
namespace be.extensions
{
class AppliedThemes : IComputedIndexField
{
public string FieldName { get; set; }
public string ReturnType { get; set; }
public object ComputeFieldValue(IIndexable indexable)
{
Item item = indexable as SitecoreIndexableItem;
if (item == null)
return null;
var themes = item["Themes"];
if (themes == null)
return null;
// TODO
}
}
}
这是添加计算索引字段的基础。然而,当我添加这 2 个文件时(class 文件中的代码从未到达),当我打开内容编辑器时出现以下错误:
SearchConfiguration 配置不正确。需要 ContentSearchConfiguration,但返回了 System.String。
没有这个简单的配置文件一切正常。
有人看到我在这里做错了什么或者知道我可以尝试解决这个问题吗?
编辑:我正在使用 Sitecore 8 更新 2
我认为您的补丁文件需要指向以下 XPath
/sitecore/contentSearch/indexConfigurations/defaultLuceneIndexConfiguration/fields
所以像这样:
<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<contentSearch>
<indexConfigurations>
<defaultLuceneIndexConfiguration>
<fields hint="raw:AddComputedIndexField">
<field fieldName="AppliedThemes">be.extensions.AppliedThemes, be.extensions</field>
</fields>
</defaultLuceneIndexConfiguration>
</indexConfigurations>
</contentSearch>
</sitecore>
</configuration>