Ejemplo n.º 1
0
 /// <summary>
 /// Adds limits to the command builder.
 /// </summary>
 /// <param name="skip">The number of rows to skip.</param>
 /// <param name="take">Number of rows to take.</param>
 /// <param name="limitOptions">The limit options.</param>
 /// <param name="seed">The seed for repeatable reads. Only applies to random sampling</param>
 /// <returns>TableDbCommandBuilder&lt;NpgsqlCommand, NpgsqlParameter, PostgreSqlLimitOption&gt;.</returns>
 protected override TableDbCommandBuilder <NpgsqlCommand, NpgsqlParameter, PostgreSqlLimitOption> OnWithLimits(int?skip, int?take, LimitOptions limitOptions, int?seed)
 {
     m_Seed         = seed;
     m_Skip         = skip;
     m_Take         = take;
     m_LimitOptions = (PostgreSqlLimitOption)limitOptions;
     return(this);
 }
Ejemplo n.º 2
0
 public static bool RequiresSorting(this PostgreSqlLimitOption limitOption)
 {
     return(limitOption switch
     {
         PostgreSqlLimitOption.None => false,
         PostgreSqlLimitOption.Rows => true,
         PostgreSqlLimitOption.TableSampleSystemPercentage => false,
         PostgreSqlLimitOption.TableSampleBernoulliPercentage => false,
         _ => throw new ArgumentOutOfRangeException(nameof(limitOption), limitOption, "Unknown limit option")
     });