come per andare a prendere l'elenco di utenti che hanno etichettato un elemento di elenco con “I Like it” tag

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

  •  16-10-2019
  •  | 
  •  

Domanda

voglio recuperare programatically tutti gli utenti (elenco di utenti) che hanno un tagged uno SharePoint 2010 voce di elenco personalizzato "mi piace".

questa discussione mostra come per ottenere il conto di utente che hanno taggato un elemento di elenco con "mi piace"

, ma voglio elenco di utenti // SharePoint fornire questa funzionalità out of the box in Central Admin per questo segui questo link

c'è un modo per andare a prendere queste informazioni programmatico ??

grazie in anticipo !!

È stato utile?

Soluzione

Mentre sono sicuro che la gente sarà affermare che interrogare il database in qualsiasi forma non è consentito (cioè influenzerà il vostro sostenibilità Microsoft), io li sfida prima del tempo per produrre qualcosa ufficialmente da Microsoft con una tale dichiarazione. Tutti i tipi di cose su inserimento / modifica / eliminazione di righe in tabelle e modificare il regime, ma nulla su come eseguire un'istruzione SELECT o dell'esecuzione di una stored procedure che non aggiorna il contenuto della tabella in alcun modo.

I dirà che l'interrogazione direttamente al database è qualcosa che dovrebbe essere fatto da persone che a) comprendere SQL e come ottimizzare le query e b) capire il DM SharePoint. Se non si desidera la gente che scrivono le query che avranno un impatto negativo misurabile sulle prestazioni di un azienda agricola.

Con quella dichiarazione di non responsabilità fuori del modo, non v'è alcun mezzo OOB di arrivare a questi dati tramite un API pubblicato e sostenuto di essere a conoscenza di. Si potrebbe arrivare ad essa da infilare alcune delle stored procedure del DB sociale insieme, ma è una specie di ingombrante. Quanto segue è un Select che ti porterà maggior parte della strada. Si avrebbe ancora bisogno di collegarlo al tuo profilo DB per risolvere il GUID a un nome di profilo ... si potrebbe alternativamente tzake il GUID e chiamare UserProfileManager.GetUserProfile per restituire un riferimento al profilo e ottenere il nome in quel modo.

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

Non è una soluzione perfetta da qualsiasi sforzo di immaginazione e uno che ovviamente richiederà ri-certificazione se gli aggiornamenti rapidi, CU, o sono installati SP.

Altri suggerimenti

Nel primo post, hai provato enumerare la lista List<SocialTermDetail> per vedere cosa c'è in ogni oggetto nella lista?

In questa rivista: http://www.diwug.nl/e- riviste / pagine / default.aspx eMagazine # 4 Ho scritto un articolo sui SocialDataService, UserProfile, utenti e gruppi e il servizio di ricerca web. Credo che questo vi aiuterà.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top