2013-04-06 3 views
0

멤버에 대한 사용자 지정 속성을 추가했으며 모든 멤버를 반복하고 사용자 지정 속성을 초기화하는 루틴을 만들려고합니다.c의 멤버에 대한 사용자 지정 속성 업데이트 #

임 내가 시도했던 두 가지 방법으로는 Ektron 버전 8.5 SP1 여기

을하는 사용

: 방법 1 - userData에 객체를 반환하지 않습니다이 방법은 방법 2

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); 

을 - 임이 원 우려 ApiAccessMode를 관리자로 지정하지 않아서 작동하지 않습니다.

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); 

회원을 어떻게 업데이트해야합니까?

+0

이 작업을 수행 했습니까? – RacerNerd

답변

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의 값은 사용자가 업데이트됩니다 결정합니다.
나는 Admin User 나 그와 비슷한 어떤 일도 할 필요가 없었으므로, 당신도 문제가되지 않을 것입니다.