Condividi tramite


Limite delle dimensioni con IDirectorySearch

Per ridurre il requisito di memoria o per altri scopi, il client può concentrarsi su un numero ridotto di oggetti restituiti dal server e ignorare il resto del set di risultati che non sono di interesse. A tale scopo, il client specifica il limite delle dimensioni di ricerca e altri criteri di ricerca appropriati. Ad esempio, se la directory archivia i punteggi di test di un distretto scolastico, è possibile eseguire una query sui primi dieci studenti con i punteggi di test più alti specificando un limite di dimensioni pari a dieci (10) e un ordinamento decrescente.

Il valore predefinito per il limite delle dimensioni non è un limite. Per impostare un limite di dimensioni, impostare un'opzione di ricerca ADS_edizione StandardARCHPREF_SIZE_LIMIT con un valore ADSTYPE_INTEGER contenente le dimensioni massime nella matrice ADS_edizione StandardARCHPREF_INFO passata al metodo IDirectorySearch::SetSearchPreference.

Nell'esempio di codice seguente viene illustrato come impostare il limite di dimensioni. Un valore limite di dimensioni pari a zero indica che non è previsto alcun limite di dimensioni.

ADS_SEARCHPREF_INFO SearchPref;
SearchPref.dwSearchPref = ADS_SEARCHPREF_SIZE_LIMIT;
SearchPref.vValue.dwType = ADSTYPE_INTEGER;
SearchPref.vValue.Integer = 1000;

Per Active Directory, il limite di dimensioni specifica il numero massimo di oggetti da restituire dalla ricerca. Anche per Active Directory, il numero massimo di oggetti restituiti da una ricerca è 1000 oggetti.