Il poco codice da scrivere è il seguente:
public static List GetMyILikeIts()
{
var socialTags = new List();
using (SPSite site = SPContext.Current.Site)
{
var ctx = SPServiceContext.GetContext(site);
var profile = ProfileLoader.GetProfileLoader(ctx);
//UserProfileManager upm = new UserProfileManager(ctx, true);
UserProfile up = profile.GetUserProfile();
SocialTagManager stm = new SocialTagManager(ctx);
SocialTag[] tags = stm.GetTags(up);
if (tags != null)
socialTags = tags.Where(t => t.Term.Name == "I like it").ToList();
}
return socialTags;
}
Una nota in particolare va all’uso della classe ProfileLoader invece che della UserProfileManager.
In pratica la seconda mi dava un problema di:
“You must have manage user profiles administrator rights to use administrator mode.”
Così, invece di creare una nuova istanza di UserProfileManager, ho trovato più utile utilizzare l’istanza già presente.
cià
No comments:
Post a Comment