در شیرپوینت 2013 ، شما می توانید بطور برنامه ریزی شده ای یک پروفایل کاربر و مشخصات پروفایل کاربر را با استفاده از API هایی که در ادامه آمده است ایجاد و بازیابی کنید.
Client object models for managed code
.NET client object model
Silverlight client object model
Mobile client object model
JavaScript object model
Representational State Transfer (REST) service
Server object model
هر رابط کاربری برنامه نویسی (API) شامل یک manager object جهت انجام وظایف مرتبط با پروفایل می باشد. علاوه بر آن هر پروفایل کاربری حالا یک پروفایل اجتماعی جهت ردیابی تعاملات با فعالیت های اجتماعی و یا مشخصات یک کاربر می باشد. علاوه بر اینها که در شیرپوینت 2013 موجود می باشد ، مایکروسافت object های جدید که ارائه دهنده کاربر و مشخصات کاربر می باشد را نیز شامل شده است.
SocialActor object که که در قسمت های feed ، پی جویی و سایر فعالیت های اجتماعی ارائه دهنده کاربران و سایر اطلاعاتشان می باشد.
PersonProperties object دربردارنده مشخصات عمومی کاربر و مشخصات پروفایل کاربر می باشد. مشخصات فرد بعنوان API کلیدی جهت دسترسی به مشخصات کاربر از کد سمت کاربر می باشد.
حال می خواهیم نگاهی به مثالی از Server Object model در رابطه با چگونگی ایجاد یک پروفایل کاربر ، بازیابی یک پروفایل کاربر و ایجاد مشخصات پروفایل اجتماعی برای یک کاربر بیاندازیم.
Classes used –
using Microsoft.Office.Server.Social;
using Microsoft.Office.Server.Administration;
using Microsoft.Office.Server.UserProfiles;
using Microsoft.SharePoint.Portal.UserProfiles;
SPWeb currentWeb = SPContext.Current.Web;
SPUser currentUser = SPContext.Current.Web.CurrentUser;
SPServiceContext serverContext = SPServiceContext.GetContext(currentWeb.Site);
UserProfileManager profileManager = new UserProfileManager(serverContext);
UserProfile profile = profileManager.GetUserProfile(currentUser.LoginName);
if (profile != null){
//Set the Profile
profile.DisplayName = “Robin”;}
UserProfileManager userProfileMgr = new UserProfileManager(serverContext);
UserProfile newUserProfile = userProfileMgr.CreateUserProfile(newAccountName);
newUserProfile.DisplayName = "New User";
newUserProfile.Commit();
یک مشخصه پروفایل دلخواه و ویژگی های آن با مجموعه ای از Object های زیر ایجاد می شود :
CoreProperty object
ProfileTypeProperty object
ProfileSubtypeProperty object
در این مثال ما مشخصه پروفایل دلخواه Personal Blog را برای یک کاربر ایجاد خواهیم کرد :
ProfilePropertyManager profilePropMgr = new UserProfileConfigManager(serverContext).ProfilePropertyManager;
CorePropertyManager corePropMgr = profilePropMgr.GetCoreProperties();
// Create a Blog URL property.
CoreProperty coreProp = corePropMgr.Create(false);
coreProp.Name = "PersonalBlog";
coreProp.DisplayName = "Personal Blog";
coreProp.Type = PropertyDataType.URL;
coreProp.Length = 100;
corePropMgr.Add(coreProp);
// Make it Visible to User in Profile
ProfileTypePropertyManager typePropMgr = profilePropMgr.GetProfileTypeProperties(ProfileType.User);
ProfileTypeProperty typeProp = typePropMgr.Create(coreProp);
typeProp.IsVisibleOnViewer = true;
typePropMgr.Add(typeProp);
SPSocialFollowingManager _followManager = new
SPSocialFollowingManager(profile);
SPSocialActorInfo newActor = new SPSocialActorInfo();
newActor.ActorType = SPSocialActorType.Document;
//Follow the document actor
newActor.ContentUri = new Uri('path of document to follow');
_followManager.Follow(newActor);
لطفا به یاد داشته باشید که جهت ایجاد یا تغییر پروفایل های کاربران ، شما باید از server object model استفاده کنید. پروفایل کاربران و مشخصات پروفایل کاربر از client API ها read-only می باشد.(به استثناء عکس پروفایل کاربر)
پست مرتبط :
طراحی پرتالهای اینترنت و اینترانت
سامانه مدیریت پروژه سازمانیEPM
سامانه درخواست مرخصی و ماموریت