0

MySite のユーザーが MySite で自分の詳細を編集することを禁止したい。

[プロファイルの編集] ボタンをクリックすると、詳細の概要が表示されますが、指定された入力フィールドのみが編集可能である必要があります。

たとえば、この写真のように:

PersonalSiteの作成はEventReceiverによって処理されるため、可能であればコードで設定したいと思います。

4

1 に答える 1

0

私は今、自分のニーズに合った答えを自分で見つけました。

UserProfilePersonalSite を作成するときに、ユーザーの を取得しています。

そして、選択したプロパティを反復処理し、IsUserEditableプロパティを false に設定しますProfileSubTypeProperty

SPServiceContext serviceContext = SPServiceContext.GetContext(site);
UserProfileManager profileManager = new UserProfileManager(serviceContext);
UserProfile profile = null;
profile = profileManager.GetUserProfile(domainUserName);
List<string> props = GetPropertiesFromSetting();
foreach (string propName in props)
{
   profile[propName].ProfileSubtypeProperty.IsUserEditable = false;
}
于 2012-09-25T06:35:25.843 に答える