xml/Microsoft.Azure.Documents/IndexingPolicy.xml (213 lines of code) (raw):
<Type Name="IndexingPolicy" FullName="Microsoft.Azure.Documents.IndexingPolicy">
<TypeSignature Language="C#" Value="public sealed class IndexingPolicy : Microsoft.Azure.Documents.JsonSerializable" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit IndexingPolicy extends Microsoft.Azure.Documents.JsonSerializable" />
<TypeSignature Language="DocId" Value="T:Microsoft.Azure.Documents.IndexingPolicy" />
<TypeSignature Language="VB.NET" Value="Public NotInheritable Class IndexingPolicy
Inherits JsonSerializable" />
<TypeSignature Language="F#" Value="type IndexingPolicy = class
 inherit JsonSerializable" />
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.14.0.0</AssemblyVersion>
<AssemblyVersion>2.14.1.0</AssemblyVersion>
<AssemblyVersion>2.15.0.0</AssemblyVersion>
<AssemblyVersion>2.16.0.0</AssemblyVersion>
<AssemblyVersion>2.16.1.0</AssemblyVersion>
<AssemblyVersion>2.16.2.0</AssemblyVersion>
<AssemblyVersion>2.17.0.0</AssemblyVersion>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.14.0.0</AssemblyVersion>
<AssemblyVersion>2.14.1.0</AssemblyVersion>
<AssemblyVersion>2.15.0.0</AssemblyVersion>
<AssemblyVersion>2.16.0.0</AssemblyVersion>
<AssemblyVersion>2.16.1.0</AssemblyVersion>
<AssemblyVersion>2.16.2.0</AssemblyVersion>
<AssemblyVersion>2.17.0.0</AssemblyVersion>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>Microsoft.Azure.Documents.JsonSerializable</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.ICloneable</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<summary>
Represents the indexing policy configuration for a collection in the Azure Cosmos DB service.
</summary>
<remarks>
Indexing policies can used to configure which properties (JSON paths) are included/excluded, whether the index is updated consistently
or offline (lazy), automatic vs. opt-in per-document, as well as the precision and type of index per path.
<para>
Refer to <see>http://azure.microsoft.com/documentation/articles/documentdb-indexing-policies/</see> for additional information on how to specify
indexing policies.
</para></remarks>
<altmember cref="T:Microsoft.Azure.Documents.DocumentCollection" />
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public IndexingPolicy ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.Documents.IndexingPolicy.#ctor" />
<MemberSignature Language="VB.NET" Value="Public Sub New ()" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<summary>
Initializes a new instance of the <see cref="T:Microsoft.Azure.Documents.IndexingPolicy" /> class for the Azure Cosmos DB service.
</summary>
<remarks>
Indexing mode is set to consistent.
</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public IndexingPolicy (params Microsoft.Azure.Documents.Index[] defaultIndexOverrides);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class Microsoft.Azure.Documents.Index[] defaultIndexOverrides) cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.Documents.IndexingPolicy.#ctor(Microsoft.Azure.Documents.Index[])" />
<MemberSignature Language="VB.NET" Value="Public Sub New (ParamArray defaultIndexOverrides As Index())" />
<MemberSignature Language="F#" Value="new Microsoft.Azure.Documents.IndexingPolicy : Microsoft.Azure.Documents.Index[] -> Microsoft.Azure.Documents.IndexingPolicy" Usage="new Microsoft.Azure.Documents.IndexingPolicy defaultIndexOverrides" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="defaultIndexOverrides" Type="Microsoft.Azure.Documents.Index[]" />
</Parameters>
<Docs>
<param name="defaultIndexOverrides">Comma seperated set of indexes that serve as default index specifications for the root path.</param>
<summary>
Initializes a new instance of the <see cref="T:Microsoft.Azure.Documents.IndexingPolicy" /> class with the specified set of indexes as
default index specifications for the root path for the Azure Cosmos DB service.
</summary>
<remarks>To be added.</remarks>
<altmember cref="T:Microsoft.Azure.Documents.Index" />
<example>
The following example shows how to override the default indexingPolicy for root path:
<code language="c#"><![CDATA[
HashIndex hashIndexOverride = Index.Hash(DataType.String, 5);
RangeIndex rangeIndexOverride = Index.Range(DataType.Number, 2);
SpatialIndex spatialIndexOverride = Index.Spatial(DataType.Point);
IndexingPolicy indexingPolicy = new IndexingPolicy(hashIndexOverride, rangeIndexOverride, spatialIndexOverride);
]]></code></example>
<example>
If you would like to just override the indexingPolicy for Numbers you can specify just that:
<code language="c#"><![CDATA[
RangeIndex rangeIndexOverride = Index.Range(DataType.Number, 2);
IndexingPolicy indexingPolicy = new IndexingPolicy(rangeIndexOverride);
]]></code></example>
</Docs>
</Member>
<Member MemberName="Automatic">
<MemberSignature Language="C#" Value="public bool Automatic { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool Automatic" />
<MemberSignature Language="DocId" Value="P:Microsoft.Azure.Documents.IndexingPolicy.Automatic" />
<MemberSignature Language="VB.NET" Value="Public Property Automatic As Boolean" />
<MemberSignature Language="F#" Value="member this.Automatic : bool with get, set" Usage="Microsoft.Azure.Documents.IndexingPolicy.Automatic" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Newtonsoft.Json.JsonProperty(PropertyName="automatic")]</AttributeName>
<AttributeName Language="F#">[<Newtonsoft.Json.JsonProperty(PropertyName="automatic")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>
Gets or sets a value that indicates whether automatic indexing is enabled for a collection in the Azure Cosmos DB service.
</summary>
<value>
True, if automatic indexing is enabled; otherwise, false.
</value>
<remarks>
In automatic indexing, documents can be explicitly excluded from indexing using <see cref="T:Microsoft.Azure.Documents.Client.RequestOptions" />.
In manual indexing, documents can be explicitly included.
</remarks>
</Docs>
</Member>
<Member MemberName="Clone">
<MemberSignature Language="C#" Value="public object Clone ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance object Clone() cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.Documents.IndexingPolicy.Clone" />
<MemberSignature Language="VB.NET" Value="Public Function Clone () As Object" />
<MemberSignature Language="F#" Value="abstract member Clone : unit -> obj
override this.Clone : unit -> obj" Usage="indexingPolicy.Clone " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Object</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
Performs a deep copy of the indexing policy for the Azure Cosmos DB service.
</summary>
<returns>
A clone of the indexing policy.
</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="CompositeIndexes">
<MemberSignature Language="C#" Value="public System.Collections.ObjectModel.Collection<System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.CompositePath>> CompositeIndexes { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Collections.ObjectModel.Collection`1<class System.Collections.ObjectModel.Collection`1<class Microsoft.Azure.Documents.CompositePath>> CompositeIndexes" />
<MemberSignature Language="DocId" Value="P:Microsoft.Azure.Documents.IndexingPolicy.CompositeIndexes" />
<MemberSignature Language="VB.NET" Value="Public Property CompositeIndexes As Collection(Of Collection(Of CompositePath))" />
<MemberSignature Language="F#" Value="member this.CompositeIndexes : System.Collections.ObjectModel.Collection<System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.CompositePath>> with get, set" Usage="Microsoft.Azure.Documents.IndexingPolicy.CompositeIndexes" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Newtonsoft.Json.JsonProperty(PropertyName="compositeIndexes")]</AttributeName>
<AttributeName Language="F#">[<Newtonsoft.Json.JsonProperty(PropertyName="compositeIndexes")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Collections.ObjectModel.Collection<System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.CompositePath>></ReturnType>
</ReturnValue>
<Docs>
<summary>
Gets or sets the additonal composite indexes
</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
<example><![CDATA[
"composite": [
[
{
"path": "/joining_year",
"order": "ascending"
},
{
"path": "/level",
"order": "descending"
}
],
[
{
"path": "/country"
},
{
"path": "/city"
}
]
]
]]></example>
</Docs>
</Member>
<Member MemberName="ExcludedPaths">
<MemberSignature Language="C#" Value="public System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.ExcludedPath> ExcludedPaths { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Collections.ObjectModel.Collection`1<class Microsoft.Azure.Documents.ExcludedPath> ExcludedPaths" />
<MemberSignature Language="DocId" Value="P:Microsoft.Azure.Documents.IndexingPolicy.ExcludedPaths" />
<MemberSignature Language="VB.NET" Value="Public Property ExcludedPaths As Collection(Of ExcludedPath)" />
<MemberSignature Language="F#" Value="member this.ExcludedPaths : System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.ExcludedPath> with get, set" Usage="Microsoft.Azure.Documents.IndexingPolicy.ExcludedPaths" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Newtonsoft.Json.JsonProperty(PropertyName="excludedPaths")]</AttributeName>
<AttributeName Language="F#">[<Newtonsoft.Json.JsonProperty(PropertyName="excludedPaths")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.ExcludedPath></ReturnType>
</ReturnValue>
<Docs>
<summary>
Gets or sets the collection containing <see cref="T:Microsoft.Azure.Documents.ExcludedPath" /> objects in the Azure Cosmos DB service.
</summary>
<value>
The collection containing <see cref="T:Microsoft.Azure.Documents.ExcludedPath" /> objects.
</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="IncludedPaths">
<MemberSignature Language="C#" Value="public System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.IncludedPath> IncludedPaths { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Collections.ObjectModel.Collection`1<class Microsoft.Azure.Documents.IncludedPath> IncludedPaths" />
<MemberSignature Language="DocId" Value="P:Microsoft.Azure.Documents.IndexingPolicy.IncludedPaths" />
<MemberSignature Language="VB.NET" Value="Public Property IncludedPaths As Collection(Of IncludedPath)" />
<MemberSignature Language="F#" Value="member this.IncludedPaths : System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.IncludedPath> with get, set" Usage="Microsoft.Azure.Documents.IndexingPolicy.IncludedPaths" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Newtonsoft.Json.JsonProperty(PropertyName="includedPaths")]</AttributeName>
<AttributeName Language="F#">[<Newtonsoft.Json.JsonProperty(PropertyName="includedPaths")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.IncludedPath></ReturnType>
</ReturnValue>
<Docs>
<summary>
Gets or sets the collection containing <see cref="T:Microsoft.Azure.Documents.IncludedPath" /> objects in the Azure Cosmos DB service.
</summary>
<value>
The collection containing <see cref="T:Microsoft.Azure.Documents.IncludedPath" /> objects.
</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="IndexingMode">
<MemberSignature Language="C#" Value="public Microsoft.Azure.Documents.IndexingMode IndexingMode { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype Microsoft.Azure.Documents.IndexingMode IndexingMode" />
<MemberSignature Language="DocId" Value="P:Microsoft.Azure.Documents.IndexingPolicy.IndexingMode" />
<MemberSignature Language="VB.NET" Value="Public Property IndexingMode As IndexingMode" />
<MemberSignature Language="F#" Value="member this.IndexingMode : Microsoft.Azure.Documents.IndexingMode with get, set" Usage="Microsoft.Azure.Documents.IndexingPolicy.IndexingMode" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))]</AttributeName>
<AttributeName Language="F#">[<Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[Newtonsoft.Json.JsonProperty(PropertyName="indexingMode")]</AttributeName>
<AttributeName Language="F#">[<Newtonsoft.Json.JsonProperty(PropertyName="indexingMode")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Microsoft.Azure.Documents.IndexingMode</ReturnType>
</ReturnValue>
<Docs>
<summary>
Gets or sets the indexing mode (consistent or lazy) in the Azure Cosmos DB service.
</summary>
<value>
One of the values of the <see cref="T:Microsoft.Azure.Documents.IndexingMode" /> enumeration.
</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="SpatialIndexes">
<MemberSignature Language="C#" Value="public System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.SpatialSpec> SpatialIndexes { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Collections.ObjectModel.Collection`1<class Microsoft.Azure.Documents.SpatialSpec> SpatialIndexes" />
<MemberSignature Language="DocId" Value="P:Microsoft.Azure.Documents.IndexingPolicy.SpatialIndexes" />
<MemberSignature Language="VB.NET" Value="Public Property SpatialIndexes As Collection(Of SpatialSpec)" />
<MemberSignature Language="F#" Value="member this.SpatialIndexes : System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.SpatialSpec> with get, set" Usage="Microsoft.Azure.Documents.IndexingPolicy.SpatialIndexes" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName>
<AssemblyVersion>2.18.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[Newtonsoft.Json.JsonProperty(PropertyName="spatialIndexes")]</AttributeName>
<AttributeName Language="F#">[<Newtonsoft.Json.JsonProperty(PropertyName="spatialIndexes")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Collections.ObjectModel.Collection<Microsoft.Azure.Documents.SpatialSpec></ReturnType>
</ReturnValue>
<Docs>
<summary>
Gets or sets the additonal spatial indexes
</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>