Partilhar via


QueryOptions Classe

Definição

Especifica os parâmetros de uma consulta de pesquisa para enumerar o conteúdo das pastas de armazenamento.

public ref class QueryOptions sealed
/// [Windows.Foundation.Metadata.Activatable(Windows.Storage.Search.IQueryOptionsFactory, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class QueryOptions final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.Activatable(Windows.Storage.Search.IQueryOptionsFactory, 65536, "Windows.Foundation.UniversalApiContract")]
class QueryOptions final
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Storage.Search.IQueryOptionsFactory), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class QueryOptions
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Storage.Search.IQueryOptionsFactory), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class QueryOptions
function QueryOptions(query, fileTypeFilter)
Public NotInheritable Class QueryOptions
Herança
Object Platform::Object IInspectable QueryOptions
Atributos

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Exemplos

Este exemplo demonstra como usar QueryOptions para consultar arquivos em um local.

// Set query options with filter and sort order for results
List<string> fileTypeFilter = new List<string>();
fileTypeFilter.Add(".jpg");
fileTypeFilter.Add(".png");
fileTypeFilter.Add(".bmp");
fileTypeFilter.Add(".gif");
var queryOptions = new QueryOptions(CommonFileQuery.OrderByName, fileTypeFilter);

// Create query and retrieve files
var query = KnownFolders.PicturesLibrary.CreateFileQueryWithOptions(queryOptions);
IReadOnlyList<StorageFile> fileList = await query.GetFilesAsync();
// Process results
foreach (StorageFile file in fileList)
{
    // Process file
}

Este exemplo demonstra como usar uma consulta de arquivo que é apoiada pelo índice do sistema para recuperar propriedades que podem depender do manipulador de propriedades de outro aplicativo (como a propriedade do documento Título ).

try
{
    // Create index backed file query and get results
    List<string> fileTypeFilter = new List<string>();
    fileTypeFilter.Add(".png");
    QueryOptions queryOptions = new QueryOptions(Windows.Storage.Search.CommonFileQuery.OrderByName, fileTypeFilter);
    queryOptions.IndexerOption = IndexerOption.OnlyUseIndexer;
    StorageFileQueryResult queryResult = Windows.Storage.KnownFolders.PicturesLibrary.CreateFileQueryWithOptions(queryOptions);
    var files = await queryResult.GetFilesAsync();

    // Process resulting files
    if (files.Count == 0)
    {
        // Perform tasks to handle no files found
    }
    else
    {
        // Access properties for each file
        foreach (StorageFile file in files)
        {
            var documentProperties = await file.Properties.GetDocumentPropertiesAsync();
            // Perform tasks with document properties
            String title = documentProperties.Title;
        }
    }
}
// Handle errors with catch blocks
catch (FileNotFoundException)
{
 // For example, handle a file not found error
}

Comentários

Você pode criar uma consulta de arquivo para qualquer pasta à qual você tenha acesso e que possa obter como uma StorageFolder.

Você pode usar QueryOptions e CreateFileQueryWithOptions para criar uma consulta de arquivo com suporte indexado que permite obter propriedades que dependem do manipulador de propriedades de outro aplicativo.

Construtores

QueryOptions()

Cria uma instância da classe QueryOptions para enumerar itens de armazenamento e a inicializa com as seguintes configurações padrão: QueryOptions.FolderDepth obtém FolderDepth.Shallow e QueryOptions.IndexerOption obtém IndexerOption.DoNotUseIndexer.

Um objeto QueryOptions com as opções anteriores fornecerá enumeração superficial de pasta por pasta dos arquivos e pastas em um local. Por padrão, as pastas são enumeradas antes que os arquivos e as pastas sejam em ordem alfabética por nome.

QueryOptions(CommonFileQuery, IIterable<String>)

Cria uma instância da classe QueryOptions para enumerar arquivos e inicializa-a com valores fornecidos pelo CommonFileQuery especificado e um filtro de tipo de arquivo opcional que determina quais arquivos incluir nos resultados da consulta.

QueryOptions(CommonFolderQuery)

Cria uma instância da classe QueryOptions para enumerar subpastas e inicializa-a com valores com base no CommonFolderQuery especificado.

Propriedades

ApplicationSearchFilter

Obtém ou define uma cadeia de caracteres de sintaxe de consulta avançada (AQS) definida pelo aplicativo para filtrar arquivos por palavras-chave ou propriedades. Essa propriedade é combinada com o UserSearchFilter para criar o filtro de pesquisa da consulta.

DateStackOption

Obtém a unidade de tempo usada para agrupar arquivos em pastas se o objeto QueryOptions foi criado com uma CommonFolderQuery com base na data. Por exemplo, se CommonFolderQuery.GroupByYear for usado para criar um objeto QueryOptions , o valor dessa propriedade será DateStackOption.Year.

FileTypeFilter

Obtém uma lista de extensões de nome de arquivo usadas para filtrar os resultados da pesquisa. Se a lista estiver vazia, os resultados incluirão todos os tipos de arquivo.

FolderDepth

Indica se a consulta de pesquisa deve produzir uma exibição superficial do conteúdo da pasta ou uma exibição recursiva profunda de todos os arquivos e subpastas.

GroupPropertyName

Obtém o nome da propriedade usada para agrupar os resultados da consulta se o objeto QueryOptions foi criado usando uma CommonFolderQuery. Por exemplo, se CommonFolderQuery.GroupByYear for usado para criar um objeto QueryOptions , o valor dessa propriedade será System.ItemDate.

IndexerOption

Obtém ou define um valor que especifica se o índice do sistema ou o sistema de arquivos é usado para recuperar os resultados da consulta. O indexador pode recuperar resultados mais rapidamente, mas não está disponível em todos os locais de arquivo.

Language

Obtém ou define a marca de linguagem IETF (Internet Engineering Task Force) (padrão BCP47) que identifica o idioma associado à consulta. Isso determina o algoritmo específico do idioma usado pelo sistema para dividir a consulta em tokens de pesquisa individuais.

SortOrder

Obtém a lista de estruturas SortEntry que especificam como classificar o conteúdo (como arquivos e subpastas) nos resultados da consulta. Use esta lista para personalizar como os resultados da consulta são classificados.

StorageProviderIdFilter

Obtém o filtro para identificadores do provedor de armazenamento.

UserSearchFilter

Obtém ou define uma cadeia de caracteres de sintaxe de consulta avançada (AQS) definida pelo usuário para filtrar arquivos por palavras-chave ou propriedades. Essa propriedade é combinada com o ApplicationSearchFilter para criar o filtro de pesquisa da consulta.

Métodos

LoadFromString(String)

Inicializa a instância atual da classe QueryOptions com parâmetros de pesquisa especificados por uma cadeia de caracteres que foi criada pelo método SaveToString .

SaveToString()

Converte os valores de um objeto QueryOptions em uma cadeia de caracteres que pode ser usada para inicializar os valores de um objeto QueryOptions chamando LoadFromString.

SetPropertyPrefetch(PropertyPrefetchOptions, IIterable<String>)

Especifica as propriedades que o sistema deve carregar antecipadamente para todos os itens no conjunto de resultados da consulta enquanto a consulta está sendo executada (em vez de recuperá-las caso a caso). Se muitas propriedades forem especificadas, a consulta poderá levar mais tempo para ser executada, mas a recuperação de propriedade subsequente nos resultados da consulta será mais rápida.

SetThumbnailPrefetch(ThumbnailMode, UInt32, ThumbnailOptions)

Especifica o tipo e o tamanho das miniaturas que o sistema deve começar a carregar imediatamente quando os itens são acessados (em vez de recuperá-los caso a caso). Isso usa mais recursos, mas torna a recuperação em miniatura nos resultados da consulta mais rápida.

Aplica-se a

Confira também