Class Table
  
  Implements a master table. Tables are rowsets that are pre-sorted by keys.
They are used in scenarios when in-memory data replication is needed.
A table supports efficient FindKey() operation but does not support sorting.
This class is not thread-safe.
 
  
  
    Inheritance
    System.Object
    
    Table
   
  
    Implements
    System.Collections.Generic.IList<
Row>
 
    System.Collections.Generic.ICollection<
Row>
 
    System.Collections.Generic.IEnumerable<
Row>
 
    System.Collections.IEnumerable
    System.Collections.Generic.IComparer<
Row>
 
    
    
   
  
    Inherited Members
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
      System.Object.Equals(System.Object)
    
    
      System.Object.Equals(System.Object, System.Object)
    
    
      System.Object.GetHashCode()
    
    
      System.Object.GetType()
    
    
      System.Object.MemberwiseClone()
    
    
      System.Object.ReferenceEquals(System.Object, System.Object)
    
    
      System.Object.ToString()
    
   
  
  Assembly: NFX.dll
  Syntax
  
    [Serializable]
public class Table : RowsetBase, IList<Row>, ICollection<Row>, IEnumerable<Row>, IEnumerable, IComparer<Row>, IJSONWritable, IValidatable
   
  Constructors
  
  
  
  
  Table(Rowset, Func<Row, Boolean>)
  Creates a shallow copy from another rowset resorting data per schema key definition, optionally applying a filter
 
  
  Declaration
  
    public Table(Rowset other, Func<Row, bool> filter = null)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Rowset | 
        other | 
         | 
      
      
        | System.Func<Row, System.Boolean> | 
        filter | 
         | 
      
    
  
  
  
  
  Table(Schema)
  
  
  Declaration
  
    public Table(Schema schema)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Schema | 
        schema | 
         | 
      
    
  
  
  
  
  Table(Table, Func<Row, Boolean>)
  Creates a shallow copy from another table, optionally applying a filter
 
  
  Declaration
  
    public Table(Table other, Func<Row, bool> filter = null)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Table | 
        other | 
         | 
      
      
        | System.Func<Row, System.Boolean> | 
        filter | 
         | 
      
    
  
  Properties
  
  
  
  
  Item[Int32]
  This method does not support setting rows in table
 
  
  Declaration
  
    public override Row this[int index] { get; set; }
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Int32 | 
        index | 
         | 
      
    
  
  Property Value
  
  Overrides
  
  Methods
  
  
  
  
  Compare(Row, Row)
  Compares two rows based on their key fields. Always compares in ascending direction
 
  
  Declaration
  
    public override int Compare(Row rowA, Row rowB)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Row | 
        rowA | 
         | 
      
      
        | Row | 
        rowB | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Int32 | 
         | 
      
    
  
  Overrides
  
  
  
  
  CompareRows(Schema, Row, Row)
  Compares two rows based on their key fields. Always compares in ascending direction
 
  
  Declaration
  
    public static int CompareRows(Schema schema, Row rowA, Row rowB)
   
  Parameters
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Int32 | 
         | 
      
    
  
  
  
  
  Insert(Int32, Row)
  This is IList member implementation, index is ignored
 
  
  Declaration
  
    public override void Insert(int index, Row item)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | System.Int32 | 
        index | 
         | 
      
      
        | Row | 
        item | 
         | 
      
    
  
  Overrides
  
  
  
  
  SearchForRow(Row, out Int32)
  Performs binary search on a sorted table
 
  
  Declaration
  
    protected override int SearchForRow(Row row, out int index)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | Row | 
        row | 
         | 
      
      
        | System.Int32 | 
        index | 
         | 
      
    
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Int32 | 
         | 
      
    
  
  Overrides
  
  Implements
  
      System.Collections.Generic.IList<T>
  
  
      System.Collections.Generic.ICollection<T>
  
  
      System.Collections.Generic.IEnumerable<T>
  
  
      System.Collections.IEnumerable
  
  
      System.Collections.Generic.IComparer<T>
  
  
  
  Extension Methods