如何使用新的 API 以编程方式在 Umbraco 中创建新的 MemberType
本文关键字:Umbraco 创建 MemberType 编程 何使用 API 方式 | 更新日期: 2023-09-27 18:36:44
我正在尝试在 Umbraco 中创建一个新的成员类型,如果它尚不存在,它将自动创建。但是,我能找到的唯一用于创建新MemberType
的代码被标记为"已过时"。
umbraco.cms.businesslogic.member.MemberType.MakeNew(admin, memberType.Name)
如何使用新的 API 执行此操作?我相信新的 API 可以在命名空间Umbraco.Core.Models
下找到。
作为参考,v6+ 的当前文档在这里,但有点缺乏。
也
遇到了这个问题。我有许多按公司分开的用户,客户希望能够由组一次"取消"批准/删除多个用户。如果我为每个公司创建一个MemberGroup
,那么选择它们很容易,因为它们将通过后端成员页面上的下拉菜单进行预排序。
我在做一些事情,好像你看一个当前Member
的属性,它实际上是一个DocumentType
。因此,在使用Services.ContentTypeService
时,我尝试创建一个 新ContentType
,这在 Umbraco 7 中是一个DocumentType
.但是你需要一个ParentId
来创建它。
我不知道ParentId
,所以我试图通过让一个当前成员在组Member
中提取它,并以这种方式获得ParentId
。但是,该ID -1
。
如果有人遇到创建MemberGroups
的解决方案,我很想知道。
如果您使用的是 umbraco 7,最好使用成员类型服务。以下是您可以采用的简单方法来实现此目的。
public void CreateMemberType(IContentTypeComposition parent, string memberTypeAlias)
{
IMemberType memberType = new Umbraco.Core.Models.MemberType(parent, memberTypeAlias);
ApplicationContext.Current.Services.MemberTypeService.Save(memberType);
}
添加成员组
ApplicationContext.Current.Services.MemberService.AddRole("Group Name");