comment récupérer la liste des utilisateurs qui ont marqué un élément de liste avec « I like it » tag

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/10480

  •  16-10-2019
  •  | 
  •  

Question

je veux aller chercher tous les utilisateurs (programatically liste des utilisateurs) qui ont une taggés une liste personnalisée sharepoint 2010 article « i like it ».

montre ce fil comment pour obtenir le nombre d'utilisateurs qui ont marqué un élément de liste avec « I like it »

mais je veux la liste des utilisateurs // sharepoint fournir cette fonctionnalité de la boîte dans l'admin central pour ce suivez ce lien

est-il possible de récupérer ces informations ?? programatically

Merci d'avance !!

Était-ce utile?

La solution

Alors que je suis les gens affirmeront que sûr interrogeant la base sous quelque forme que n'est pas autorisé (à savoir Microsoft aura une incidence sur votre supportabilité), je les remettre en question à l'avance à quoi que ce soit produit officiellement de Microsoft avec une telle déclaration. Toutes sortes de choses sur l'insertion / modification / suppression de lignes dans les tableaux et la modification du régime, mais rien sur l'exécution d'une instruction select ou l'exécution d'une procédure stockée qui ne met pas à jour le contenu de la table de quelque façon.

Je vais dire que l'interrogation directement à la base est quelque chose qui devrait être fait par des gens qui a) comprendre SQL et comment il optimise les requêtes et b) comprendre le DM SharePoint. Vous ne voulez pas les gens à écrire des requêtes qui auront un impact négatif de mesurable sur la performance d'une ferme.

Avec cette renonciation de la route, il n'y a pas moyen OOB d'obtenir à ces données via une API publiée et soutenu que je suis au courant. Vous pouvez y accéder en enfilant quelques-unes des procédures stockées de la DB sociale ensemble, mais il est un peu encombrant. Ce qui suit est un Sélectionnez que vous obtiendrez la plupart du temps. Vous auriez encore besoin de le relier à votre profil DB pour résoudre le GUID à un nom de profil ... vous pouvez alternativement tzake le GUID et appeler UserProfileManager.GetUserProfile pour renvoyer une référence au profil et obtenir le nom de cette façon.

SELECT UserId
FROM [Social DB].[dbo].[SocialTags] st 
  Inner Join [Social DB].[dbo].[Urls] u 
    On u.UrlId = st.UrlId 
    and u.Url = 'http://sharepointdev:9000/Shared%20Documents/Content_viewing_2011-07-26T131806.xlsx' -- the encoded URL of the file you want to retrieve Like It info on
  Inner Join [Social DB].[dbo].[UserProfile_Validation] uv 
    On uv.User_RecordID = st.User_RecordID
Where
  InputTermLabel = 'I like it' -- or you can get the TermID for the "I Like It" tag and query against TermID

pas une solution parfaite, loin de l'imagination et qui exigera évidemment recertification si des correctifs, CU ou SPs sont installés.

Autres conseils

Dans le premier message, avez-vous essayé la liste énumérant List<SocialTermDetail> pour voir ce qui est dans chaque objet dans la liste?

Dans ce magazine: http://www.diwug.nl/e- magazines / pages / default.aspx eMagazine # 4 J'ai écrit un article sur les SocialDataService, UserProfile, Utilisateurs et groupes et le service Web de recherche. Je suppose que cela vous aidera.

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top