IndexableContent

Menunjukkan bahwa teks elemen harus diindeks untuk pencarian, tetapi tidak terkait dengan properti . Perhatikan bahwa properti dapat diambil nanti berdasarkan kunci properti, tetapi konten teks tidak bisa.

<element
    sc:IndexableContent= "true" | "false" | "1" | "0"
    xmlns:sc="http://schemas.microsoft.com/Search/2013/ApplicationContent">
</element>

Jenis data

Atribut ini menerima nilai boolean:

  • true
  • false
  • 1
  • 0

Contoh

Contoh ini menunjukkan file appcontent-ms sederhana yang menjelaskan item bernama "Sampel 1".

Perhatikan bahwa file berisi elemen yang tidak ditentukan oleh skema appcontent-ms: IndexerSampleInformation dan IndexerSampleSpecificElement. File appcontent-ms Anda harus memiliki simpul akar yang merangkum semua data yang akan diindeks, tetapi Anda dapat memberi nama simpul tersebut apa pun yang Anda inginkan.

<?xml version="1.0" encoding="utf-8"?>
<IndexerSampleInformation>
  <Properties xmlns="http://schemas.microsoft.com/Search/2013/ApplicationContent">
    <Name>Sample 1</Name>
    <Keywords>
      <Keyword xml:lang="en-US">Sample 1 - keyword 1</Keyword>
      <Keyword>Sample 1 - keyword 2</Keyword>
    </Keywords>
    <Comment>Sample 1 comment</Comment>
    <AdditionalProperties>
      <Property Key="System.Title">Sample 1 Title</Property>
      <Property xml:lang="en-US" Key="System.Contact.EmailAddresses">
        <Value>bryan@contoso.com</Value>
        <Value>vincent@contoso.com</Value>
      </Property>
    </AdditionalProperties>
  </Properties>
  <IndexerSampleSpecificElement sc:IndexableContent="true" 
    xmlns:sc="http://schemas.microsoft.com/Search/2013/ApplicationContent">
    The text included here will be indexed, enabling full-text search.
  </IndexerSampleSpecificElement>
</IndexerSampleInformation>

Anda bahkan dapat memberi tahu Windows Search untuk mengindeks konten elemen arbitrer. Cukup gunakan atribut IndexableContent untuk memberi tahu Search untuk mengindeks konten. Dalam contoh sebelumnya, Windows Search akan mengindeks konten IndexerSampleSpecificElement karena atribut IndexableContent diatur ke true:

  <IndexerSampleSpecificElement sc:IndexableContent="true" 
    xmlns:sc="http://schemas.microsoft.com/Search/2013/ApplicationContent">
    The text included here will be indexed, enabling full-text search.
  </IndexerSampleSpecificElement>

Pencarian akan memperlakukan konten sebagai konten teks secara default; jika kontennya adalah base64, gunakan atribut ContentType untuk menentukan jenis MIME.

Contoh berikutnya menunjukkan cara menyalin file appcontent-ms ke folder LocalFolder\Indexed aplikasi Anda. Kode menyalin file apa pun yang ditemukannya di folder appcontent-ms aplikasi ke folder LocalFolder\Indexed. (Anda juga dapat membuat file appcontent-ms baru langsung di folder Terindeks daripada menyalinnya dari lokasi lain.)

/// <summary>
/// For the purposes of this sample, the appcontent-ms files are stored in an "appcontent-ms" folder in the
/// install directory. These are then copied into the app&#39;s "LocalState\Indexed" folder, which exposes them
/// to the indexer.
/// </summary>
public async static Task<string> AddAppContentFilesToIndexedFolder()
{
    var localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;
    var installDirectory = Windows.ApplicationModel.Package.Current.InstalledLocation;
    var outputString = "Items added to the \"Indexed\" folder:";
    var appContentFolder = await installDirectory.GetFolderAsync("appcontent-ms");
    var indexedFolder = await localFolder.CreateFolderAsync(
        "Indexed", Windows.Storage.CreationCollisionOption.OpenIfExists);
    var files = await appContentFolder.GetFilesAsync();
    foreach (var file in files)
    {
        outputString += "\n" + file.DisplayName + file.FileType;
        await file.CopyAsync(indexedFolder, 
            file.Name, Windows.Storage.NameCollisionOption.ReplaceExisting);
    }
    return outputString;
}
// For the purposes of this sample, the appcontent-ms files are stored in an "appcontent-ms" folder
// in the install directory.  These are then copied into the app&#39;s "LocalState\Indexed" folder,
// which exposes them to the indexer.
function _addAppContentFilesToIndexedFolder() {
    var localFolder = appData.localFolder,
        appcontentFolder,
        indexedFolder,
        installDirectory = Windows.ApplicationModel.Package.current.installedLocation;
    var output = "Items added to the \"Indexed\" folder:\n";
    installDirectory.getFolderAsync("appcontent-ms").then(function (retrievedAppcontentFolder) {
        appcontentFolder = retrievedAppcontentFolder;
        return localFolder.createFolderAsync(
            "Indexed", Windows.Storage.CreationCollisionOption.openIfExists);
    }).then(function (retrievedIndexedFolder) {
        indexedFolder = retrievedIndexedFolder;
        return appcontentFolder.getFilesAsync(appcontentFolder);
    }).then(function (files) {
        var promiseArray = [];
        for (var i = 0, len = files.length; i < len; i++) {
            promiseArray[i] = files[i].copyAsync(indexedFolder, 
                files[i].name, Windows.Storage.NameCollisionOption.replaceExisting);
            output += files[i].displayName + files[i].fileType;
            if (i < len - 1) {
                output += "\n";
            }
        }
        return WinJS.Promise.join(promiseArray);
    }).done(function () {
        WinJS.log &amp;&amp; WinJS.log(output, "sample", "status");
    });
}

Untuk kode lengkapnya, lihat sampel Pengindeks.

Persyaratan

Klien minimum yang didukung

Windows 8.1 [hanya aplikasi desktop]

Server minimum yang didukung

Windows Server 2012 R2 [hanya aplikasi desktop]

Lihat juga

Sampel pengindeks

Windows.Storage.Search