0

我为成员添加了一个自定义属性,并希望创建一个循环遍历所有成员并初始化自定义属性的例程。

我正在使用 Ektron 版本 8.5 sp1

以下是我尝试过的两种方法: 方法 1 - 此方法不返回 userData 对象

var userManager = new Ektron.Cms.Framework.User.UserManager(Ektron.Cms.Framework.ApiAccessMode.Admin);
var userData = userManager.GetItem(userManager.UserId, true);
userData.CustomProperties["Year 7 Year"].Value = newYear7Year;
userManager.Update(userData);

方法 2 - 我担心这行不通,因为我没有将 ApiAccessMode 指定为 Admin

var commonApi = new Ektron.Cms.CommonApi();
var userApi = new Ektron.Cms.API.User.User();
var userData = userApi.GetUser(commonApi.UserId, false, false);
userData.CustomProperties["Year 7 Year"].Value = newYear7Year;
userApi.UpdateUser(userData);

我应该如何更新会员?

4

1 回答 1

0

我有要更新的自定义属性。当用户创建帐户时,我会更新它们,但我认为这没有什么不同。我不使用 CommonApi。以下是我所做的基本工作:

Ektron.Cms.API.User.User userApi = new Ektron.Cms.API.User.User();
Ektron.Cms.UserData userData = userApi.GetUser(PUT_USER_ID_HERE);
userData.CustomProperties[keyName].Value = value;
userApi.UpdateUser(userData); 

PUT_USER_ID_HERE 的值决定了将更新哪个用户。
我不需要对管理员用户或类似的东西做任何特别的事情,所以希望这对你来说也不会成为问题。

于 2013-04-09T18:54:07.963 回答