public void GetIndexInformationOneIndexWithCompareOptions() { const string Indexname = "myindex"; const string Indexdef = "-unicode\0\0"; CultureInfo currentCulture = CultureInfo.CurrentCulture; var pidxUnicode = new JET_UNICODEINDEX { lcid = EseInteropTestHelper.CultureInfoGetLcid(currentCulture), dwMapFlags = Conversions.LCMapFlagsFromCompareOptions(CompareOptions.IgnoreSymbols | CompareOptions.IgnoreCase), }; var indexcreate = new JET_INDEXCREATE { szIndexName = Indexname, szKey = Indexdef, cbKey = Indexdef.Length, grbit = CreateIndexGrbit.IndexDisallowNull, pidxUnicode = pidxUnicode, }; Api.JetBeginTransaction(this.sesid); Api.JetCreateIndex2(this.sesid, this.tableid, new[] { indexcreate }, 1); IEnumerable <IndexInfo> indexes = Api.GetTableIndexes(this.sesid, this.tableid); // There should be only one index IndexInfo info = indexes.Single(); Assert.AreEqual(Indexname, info.Name); Assert.AreEqual(CreateIndexGrbit.IndexDisallowNull, info.Grbit); Assert.AreEqual(1, info.IndexSegments.Count); Assert.AreEqual("unicode", info.IndexSegments[0].ColumnName, true); Assert.IsFalse(info.IndexSegments[0].IsAscending); Assert.AreEqual(JET_coltyp.LongText, info.IndexSegments[0].Coltyp); Assert.IsFalse(info.IndexSegments[0].IsASCII); Assert.AreEqual(CompareOptions.IgnoreSymbols | CompareOptions.IgnoreCase, info.CompareOptions); Api.JetRollback(this.sesid, RollbackTransactionGrbit.None); }