Creazione di una sezione Profilo utente a livello di codice
-
16-10-2019 - |
Domanda
Sto cercando di creare una nuova sezione profilo utente a livello di codice, ma senza successo. Il problema è con la Tipo di proprietà della classe di .
Quando ho specificare un valore come la "sezione" per questo, ricevo l'eccezione tipo di dati non è disponibile per la sezione . Quando non si specifica un valore, ricevo l'eccezione UserProfilePropertySettings oggetto deve avere un valore impostato per 'Tipo' .
Ecco il codice:
var userProfileConfigManager = new UserProfileConfigManager(ServerContext.GetContext(site));
var propertyCollection = userProfileConfigManager.GetPropertiesWithSection();
var newProperty = propertyCollection.Create(true);
newProperty.Name = "NewSection";
newProperty.DisplayName = "NewSection";
newProperty.Type = "section"; // or not set
newProperty.IsUserEditable = false;
newProperty.Length = 0;
newProperty.DefaultPrivacy = 0;
newProperty.PrivacyPolicy = 0;
newProperty.IsSearchable = false;
newProperty.IsVisibleOnEditor = false;
newProperty.IsVisibleOnViewer = false;
newProperty.Separator = MultiValueSeparator.Unknown;
newProperty.Commit();
Tutte le idee?
Soluzione
Il mio errore - la seconda eccezione è stata la mia causa di controllo di ingresso troppo zelante! Tuttavia il codice è stato anche corretto. Dovrebbe essere visualizzato:
var userProfileConfigManager = new UserProfileConfigManager(ServerContext.GetContext(site));
var propertyCollection = userProfileConfigManager.GetPropertiesWithSection();
var newProperty = propertyCollection.Create(true);
newProperty.Name = "NewSection";
newProperty.DisplayName = "NewSection";
newProperty.Commit();
Altri suggerimenti
E 'anche una buona idea per impostare l'ordine della sezione:
// order being the absolute position you want to place section in property list
propertyCollection.SetDisplayOrderBySectionName(newProperty.Name,order);
propertyCollection.CommitDisplayOrder();
Questo è di solito il motivo per cui faccio questo a livello di codice, in primo luogo, in modo da non devo cliccare su / giù 1000 volte all'interno della lista di mapping proprietà del profilo utente in SSP :-) - Anders Rask 0 secondi fa
hth Anders Rask