扩展成员选择器控制

时间:2012-09-15 22:36:19

标签: c# asp.net .net umbraco

有没有办法让会员选择器下拉列表只显示给某个组或类型的成员?

目前,我们有下拉列表显示数据库中的所有成员(大约10k用户)。

我需要一种方法来做到这一点而不会丢失任何数据。

1 个答案:

答案 0 :(得分:3)

听起来您需要创建一个自定义数据类型,允许您拥有不同类型的成员选择器 - this is a good guide to creating a custom datatype in Umbraco以及如何在Umbraco中使用它来替换默认成员选择器。

关于获取成员there are good tips on our.umbraco.org的子集:

var list = MemberGroup.GetByName("Member Group Name").GetMembersAsIds();

我想如果你想在你的自定义数据类型中有一个下拉列表,你可以将一个selectbox绑定到一个编码为的字典(未经测试,但改编自另一个代码片段):

Dictionary<int, string> list = new Dictionary<int, string>();
var memberGroup = MemberGroup.GetByName("Member Group Name");
if (memberGroup != null)
{
        foreach (Member member in memberGroup.GetMembers())
        {
                list.Add(member.Id, member.Name);
        }
}

在二级培训中,有一个工作示例,使用自动填充字段通过输入部分名称来允许成员选择 - 因此,如果您创建自定义数据类型,您可能需要评估下拉列表是否是正确的UI元素你的需求。