IndicesAttribute Class
Specifies the properties that participate in creation of non-unique database indices.
Namespace: DevExpress.Xpo
Assembly: DevExpress.Xpo.v18.2.dll
Declaration
[AttributeUsage(AttributeTargets.Class, Inherited = true)]
public sealed class IndicesAttribute :
Attribute
Remarks
Apply this attribute to a persistent class to specify database indices to be created in the database table associated with the class. Unlike IndexedAttribute, IndicesAttribute allows you to specify several non-unique indices for the current table using a single attribute declaration. The following code snippet illustrates usage of both attributes.
[Indices("Name", "Name;Age", "Age;ChildCount")]
public class Person : XPObject {
[Size(32)]
public String Name;
[Indexed(Unique = true), Size(64)]
public String FullName;
public int Age;
public int ChildCount;
}
With this code in place, the database table corresponding to Person will have four indices.
- A non-unique index over the Name column.
- A non-unique multi-column index over the Name and Age columns.
- A non-unique multi-column index over the Age and ChildCount columns.
- A unique index over the FullName column.
Note
XPO does not support tables with multi-column (compound) keys or indexes in ASE databases. To avoid exceptions when connecting to ASE databases containing these tables, use one-column keys or indexes.