我想知道Solr如何索引一般链接字段,还是我们需要为此创建计算索引字段?
我有一个辅助类,它继承自SearchResultItem,它有一个索引字段。
[IndexField("Call To Action")]
public LinkField CallToAction { get; set; }
此字段是sitecore中的常规链接字段。
下面是检索除CallToAction之外的所有Event_card值的搜索代码(即Always null)。如果我将字段类型从Link转换为字符串,我会获得整个常规链接原始值,这在视图中难以解析并通过玻璃映射器进行编辑。
if(result.TotalSearchResults!= 0)
{
//Load Event card data to be displayed on page
var resultItems =
result.Select(c => new Event_Card
{
Headline = c.Document.Headline,
Start_Date=c.Document.StartDate,
Content=c.Document.ContentData,
Call_To_Action=c.Document.CallToAction // this is always null
});
}
这是我与Event_Card相关的Entity类
Event_Card
[global :: System.CodeDom.Compiler.GeneratedCodeAttribute(“Sitecore的团队开发 - GlassItem.tt”,“1.0”)]
[SitecoreField(IEvent_CardConstants.Call_To_ActionFieldName)]
public virtual Link Call_To_Action { get; set; }
IEvent_Card
[SitecoreField(IEvent_CardConstants.Call_To_ActionFieldName)]
Link Call_To_Action { get; set; }
public static partial class IEvent_CardConstants
{
public static readonly ID Call_To_ActionFieldId = new ID(“4c296a05-d05f-47c5-8934-8801bec5be85”);
public const string Call_To_ActionFieldName = "Call To Action";
}
任何人都可以告诉我如何实现这一目标。如果我们需要使用计算字段,一个例子会有很大的帮助。
提前致谢!
答案 0 :(得分:-1)
我只是快速浏览并找到了有用的链接。
Map sitecore 8 general link field from Index
我认为这个Stack溢出问题描述了你在说什么,并且有一个链接可能对你有所帮助。