我需要一些关于lucene索引文件的帮助,想一想,也许你们中的一些人可以帮助我。
我有这样的json:
[
{
"Id": 4476,
"UrlName": null,
"PhoneData": [
{
"PhoneType": "O",
"PhoneNumber": "0065898",
},
{
"PhoneType": "F",
"PhoneNumber": "0065898",
}
],
"Contact": [],
"Services": [
{
"ServiceId": 10,
"ServiceGroup": 2
},
{
"ServiceId": 20,
"ServiceGroup": 1
}
],
}
添加前两个字段相对简单:
// add lucene fields mapped to db fields
doc.Add(new Field("Id", sampleData.Id.Value.ToString(), Field.Store.YES, Field.Index.NOT_ANALYZED));
doc.Add(new Field("UrlName", sampleData.UrlName.Value ?? "null" , Field.Store.YES, Field.Index.ANALYZED));
但是如何将PhoneData和Services添加到索引中以便它可以连接到唯一的Id ??
答案 0 :(得分:2)
对于索引JSON对象,我会这样:
$json
。该字段将被存储但不会被编入索引。PhoneData.PhoneType
如果可以将所有嵌套属性编入索引,那么它很简单,只需遍历所有这些属性就可以生成这个可索引字段。
但是如果你不想索引所有这些(更现实的情况),那么如何知道哪个属性是可索引的是另一个问题;在这种情况下你可以:
我创建了一个这样做的库(以及更多),可能对你有帮助。
查看