Domanda

I miei profili utente hanno alcune proprietà personalizzate. Ora ho bisogno di ottenere un elenco di tutti i valori che questa proprietà personalizzata ha sul qualsiasi utente. Questo codice restituisce un errore che " 'Division' Colonna non esiste. Potrebbe essere stato eliminato da un altro utente".

E 'questo l'approccio giusto? C'è molti utenti e possibili molti valori distinti.

 SPListItemCollection userInformationList = SPContext.Current.Web.SiteUserInfoList.Items;
  var divisions= (from SPListItem userItem in userInformationList.Items where userItem["Division"] != null select userItem["Division"]); 
È stato utile?

Soluzione

Controllare il GetUserProfile da UserProfileManager. È possibile ottenere l'intero oggetto, dovrebbe essere il posto giusto per cercare un elenco di tutte le proprietà personalizzate ..

Sto lavorando su un webpart quasi simliar .. im cercando di visualizzare solo un paio di proprietà personalizzate ..

speranza di aiuto

http://msdn.microsoft. com / it-it / library / microsoft.office.server.userprofiles.userprofilemanager.aspx

Altri suggerimenti

Prima di tutto mai e poi mai usare LINQ in questo modo in SharePoint! Potrai recuperare l'elenco delle informazioni utente completo dal database quando colpisce la proprietà .Items! Utilizzare invece una query CAML per "ricerca" per gli utenti che utilizzano l'oggetto SPQuery.

vi consiglio di utilizzare il U2U CAML Query Builder per costruire la vostra interrogazione - utilizzando tale strumento si otterrà il nome di colonne e di colonna corretto

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