Domanda

che sto cercando di realizzare qualcosa che io non sono sicuro se è possibile o meno.

Ho un sistema di news che utilizza più elenchi, permessi ecc.

I permessi esiste perché solo 1 persona è in grado di approvare / disapprovare la notizia che stanno per essere mostrato in Home Page. Ho una lista chiamata "News - casa di approvazione" con 4 voci "Approvato, In attesa di approvazione, Non appare sulla home page, Non approvato". Ho usato una lista per questi articoli, perché solo l'amministratore può vedere le opzioni "Approved" e "non autorizzato", ma quando chiunque altro sta creando Notizie, vedono un elenco a discesa (di ricerca per la lista permesso) con le opzioni "doesn' t appaiono sulla home page" e "in attesa di approvazione".

Il problema è che a causa di questo campo 'gestite le autorizzazioni', l'utente comune (quelli che hanno solo il permesso di leggere il contenuto) non può vedere gli elementi che sono contrassegnati "Approvato" sul campo di ricerca.

Con il mio utente (admin) sulla linea:

 return (list.GetItems(q)).GetDataTable();

Ho sempre trovato 1 articolo (ho solo 1 articolo sulla mia lista Notizie ed è "Approvato")

Ma quando sto utilizzando l'utente comune, la stessa linea restituisce 0 oggetti.

Ho provato con SPSecurity.RunWithElevatedPrivileges, ma senza successo su questo.

Non so se sono abbastanza chiare, ma c'è c'è un modo per ottenere quello che sto cercando di fare?

Ci scusiamo per il mio inglese scadente.

Grazie.

È stato utile?

Soluzione

Siete alla ricerca di ModerationType = Moderatore

È necessario creare un SPQuery come in questo esempio per recuperare i listItems dalla vostra lista, ma invece di in quell'esempio settting Ambito ricorsiva invece impostare

oQuery.ViewAttributes = "ModerationType=\"Moderator\"";
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top