Beispiel #1
0
 /// <summary>Same as <see cref="filterFindBetween"/>, but the order is flipped, i.e. records are returned from end to start.</summary>
 public void filterFindBetweenInv(string indName, object[] valsStart, object[] valsEnd)
 {
     m_filter = new SearchFilterBetweenInv(cursor, indName, valsStart, valsEnd);
 }
Beispiel #2
0
 /// <summary>Filter the recordset only including the records listed on the specified index,
 /// where the indexed columns values are the same as the supplied arguments.
 /// The last supplied argument however is threated like it contains the wildcard at the end.</summary>
 /// <param name="indName">Name of the index, as supplied to the <see cref="Attributes.EseIndexAttribute">[EseIndex]</see> attribute constructor.</param>
 /// <param name="vals">Values of the indexed columns, in the same order they go in the index.</param>
 /// <remarks>
 /// <para><b>NB:</b> this filter doesn't support bookmarks-based navigation,
 /// so the <see cref="tryGotoBookmark" /> will throw.</para>
 /// <para>This function does not immediately affect the cursor;
 /// instead, it changes the result of e.g.
 /// <see cref="applyFilter"/>, <see cref="all"/>, and <see cref="getFirst"/> methods.</para>
 /// </remarks>
 public void filterFindSubstring(string indName, params object[] vals)
 {
     m_filter = new SearchFilterSubstring(cursor, indName, vals);
 }
Beispiel #3
0
 /// <summary>Set the sort order to the specified index, and optionally reverse the records.</summary>
 /// <param name="indName">Name of the index, as supplied to the <see cref="Attributes.EseIndexAttribute">[EseIndex]</see> attribute constructor.</param>
 /// <param name="bReverseOrder">set to true to make the recordset to return the results in the reversed order, i.e. from last record to the first record.</param>
 /// <remarks>
 /// <para>For example, if you have a <see cref="Attributes.EseTableAttribute">table</see> with 2 integer columns "c1" and "c2",
 /// the table has an <see cref="Attributes.EseIndexAttribute">index</see> "ind" saying "+c1\0+c2\0\0",
 /// then calling
 /// <code>
 /// rs.filterSort( "ind", false );
 /// return rs.all();
 /// </code>
 /// will return the same sequence of records as
 /// <code>
 /// rs.filterClear();
 /// return rs.all().OrderBy( r =&gt; r.c1 ).ThenBy( r =&gt; r.c2 );
 /// </code>
 /// </para>
 /// <para>This function does not immediately affect the cursor;
 /// instead, it changes the result of e.g.
 /// <see cref="applyFilter"/>, <see cref="all"/>, and <see cref="getFirst"/> methods.</para>
 /// </remarks>
 public void filterSort(string indName, bool bReverseOrder)
 {
     m_filter          = new FilterAllRecords(cursor, indName);
     m_filter.bInverse = bReverseOrder;
 }
Beispiel #4
0
 /// <summary>Include the records,
 /// where the indexed columns values are exactly the same as the supplied arguments. The output is reversed.</summary>
 /// <param name="indName">Name of the index, as supplied to the <see cref="Attributes.EseIndexAttribute">[EseIndex]</see> attribute constructor.</param>
 /// <param name="vals">Values of the indexed columns, in the same order they go in the index.</param>
 /// <remarks>
 /// <para><b>NB:</b> this filter doesn't support bookmarks-based navigation,
 /// so the <see cref="tryGotoBookmark" /> will throw.</para>
 /// <para>This function does not immediately affect the cursor;
 /// instead, it changes the result of e.g.
 /// <see cref="applyFilter"/>, <see cref="all"/>, and <see cref="getFirst"/> methods.</para>
 /// </remarks>
 public void filterFindEqualInv(string indName, params object[] vals)
 {
     m_filter = new SearchFilterEqualInv(cursor, indName, vals);
 }
Beispiel #5
0
 /// <summary>Clear any filter, i.e. set the sort order to the non-reversed primary index,
 /// and cancel navigation limitations.</summary>
 /// <remarks>This function does not immediately affect the cursor;
 /// instead, it changes the result of e.g.
 /// <see cref="applyFilter"/>, <see cref="all"/>, and <see cref="getFirst"/> methods.</remarks>
 public void filterClear()
 {
     m_filter = new FilterAllRecords(cursor);
 }