向 Umbraco 8 成员索引添加一个字段
Add a field to the Umbraco 8 Members Index
我通过添加一些自定义字段扩展了 Umbraco 8 成员类型。
我需要能够通过这些字段之一搜索成员,'organisationName'(这是它的别名),所以在查看 Examine 时,我尝试将其添加到成员索引中,如下所示:
private readonly IExamineManager _examineManager;
public CustomizeIndexComponent(IExamineManager examineManager)
{
_examineManager = examineManager;
}
public void Initialize()
{
// get the external index
if (!_examineManager.TryGetIndex("MembersIndex", out var index))
return;
// add a custom field type
index.FieldDefinitionCollection.TryAdd(new FieldDefinition("organisationName", FieldDefinitionTypes.FullText));
}
当我在 TryAdd 之后放置断点时,我可以看到新字段,但在后台查看成员索引时它不存在。
我这样做的方式是否正确,因为我可以将我的字段实际添加到成员索引中,还是应该根据成员创建一个新的自定义索引?
我认为大多数人都像这样创建自己的索引:
https://our.umbraco.com/forum/developers/extending-umbraco/72299-umbraco-7-backoffice-member-search-by-custom-properties#comment-277928
但我个人只会使用 GetMembersByPropertyValue 访问成员资格 API。
使用 umbraco api 控制器调用成员 api 非常容易。
https://our.umbraco.com/documentation/reference/management/services/memberservice/
(这里的例子只是为了显示几行)。
/umbraco/api/SearchMemberApi/ReturnMembersWith
我通过添加一些自定义字段扩展了 Umbraco 8 成员类型。
我需要能够通过这些字段之一搜索成员,'organisationName'(这是它的别名),所以在查看 Examine 时,我尝试将其添加到成员索引中,如下所示:
private readonly IExamineManager _examineManager;
public CustomizeIndexComponent(IExamineManager examineManager)
{
_examineManager = examineManager;
}
public void Initialize()
{
// get the external index
if (!_examineManager.TryGetIndex("MembersIndex", out var index))
return;
// add a custom field type
index.FieldDefinitionCollection.TryAdd(new FieldDefinition("organisationName", FieldDefinitionTypes.FullText));
}
当我在 TryAdd 之后放置断点时,我可以看到新字段,但在后台查看成员索引时它不存在。
我这样做的方式是否正确,因为我可以将我的字段实际添加到成员索引中,还是应该根据成员创建一个新的自定义索引?
我认为大多数人都像这样创建自己的索引: https://our.umbraco.com/forum/developers/extending-umbraco/72299-umbraco-7-backoffice-member-search-by-custom-properties#comment-277928
但我个人只会使用 GetMembersByPropertyValue 访问成员资格 API。 使用 umbraco api 控制器调用成员 api 非常容易。 https://our.umbraco.com/documentation/reference/management/services/memberservice/ (这里的例子只是为了显示几行)。
/umbraco/api/SearchMemberApi/ReturnMembersWith