QueryOptions Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
- 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. |