0

我在使用 .NET API SenseNet.Client 定义 sensenet 上的组成员时遇到问题。

我需要创建一个自动流程来在 sensenet 上添加用户和组。我知道如何创建用户和组,但我没有找到任何有关将用户添加到组的信息。

这是我用来创建组的代码:

var group = Content.CreateNew("/Root/IMS/BuiltIn/OUtest", "Group", "testGroup");
    group["Name"] = "testGroup";
    group["DisplayName"] = "testGroup";
    await group.SaveAsync();
4

1 回答 1

1

为了支持这种情况,Client API 中有一个Group类,其中包含几个用于修改组成员资格的方法。它继承自主Content类,因此具有所有功能。

如果您已经有一个组 id,您可以选择静态 API 来修改成员资格(下面的idArray应该只包含新成员,您必须知道现有成员,这只是 'delta')。

// add new members to a group
await Group.AddMembersAsync(group.Id, idArray);

...或实例 API,如果您正在创建一个新组(请注意通用创建者方法):

// create group using the generic method
var group = Content.CreateNew<Group>("/Root/IMS/BuiltIn/OUtest", "Group", "testGroup");
group["Name"] = "testGroup";
group["DisplayName"] = "testGroup";
await group.SaveAsync();

// add new members
await group.AddMembersAsync(idArray);

// remove members
await group.RemoveMembersAsync(deletedUsersArray);

上述方法会立即调用 REST,因此无需在它们之后调用 Save

于 2017-01-04T20:12:11.317 回答