Show / Hide Table of Contents

Class Rowset

Implements a rowset that supports row change logging and CRUD operations. Rowsets are not optimal for data replication as they perform linear search which is slow, however Rowset class supports sorting. In contrast, Tables are kind of rowsets that keep data pre-sorted by key thus facilitating quick searching

Inheritance
System.Object
RowsetBase
Rowset
Implements
System.Collections.Generic.IList<Row>
System.Collections.Generic.ICollection<Row>
System.Collections.Generic.IEnumerable<Row>
System.Collections.IEnumerable
System.Collections.Generic.IComparer<Row>
IJSONWritable
IValidatable
Inherited Members
RowsetBase.FromJSON(String, Boolean, Boolean)
RowsetBase.FromJSON(JSONDataMap, Boolean, Boolean)
RowsetBase.FromJSON(JSONDataMap, Boolean, Boolean, Boolean, SetFieldFunc)
RowsetBase.FromJSON<T>(String, RowsetBase, SetFieldFunc)
RowsetBase.FromJSON<T>(JSONDataMap, RowsetBase, SetFieldFunc)
RowsetBase.m_Schema
RowsetBase.m_List
RowsetBase.m_Changes
RowsetBase.InstanceGUID
RowsetBase.Schema
RowsetBase.Count
RowsetBase.AsReadonlyIList
RowsetBase.LogChanges
RowsetBase.Changes
RowsetBase.ChangeCount
RowsetBase.ContextMap
RowsetBase.Context
RowsetBase.Insert(Row)
RowsetBase.Update(Row, IDataStoreKey, Func<Row, Row, Row>)
RowsetBase.Upsert(Row, Func<Row, Boolean>, Func<Row, Row, Row>)
RowsetBase.Delete(Row, IDataStoreKey)
RowsetBase.Delete(Object[])
RowsetBase.Purge()
RowsetBase.DeleteAll()
RowsetBase.PurgeChanges()
RowsetBase.KeyRowFromValues(Object[])
RowsetBase.FindByKey(Row)
RowsetBase.FindByKey(Object[])
RowsetBase.FindByKey(Row, Func<Row, Boolean>)
RowsetBase.FindByKey(Func<Row, Boolean>, Object[])
RowsetBase.FindIndexByKey(Row)
RowsetBase.FindIndexByKey(Object[])
RowsetBase.FindIndexByKey(Row, Func<Row, Boolean>)
RowsetBase.FindIndexByKey(Func<Row, Boolean>, Object[])
RowsetBase.GetChangeAt(Int32)
RowsetBase.Validate(String)
RowsetBase.GetEnumerator()
RowsetBase.IEnumerable.GetEnumerator()
RowsetBase.IndexOf(Row)
RowsetBase.Insert(Int32, Row)
RowsetBase.RemoveAt(Int32)
RowsetBase.Item[Int32]
RowsetBase.Add(Row)
RowsetBase.Clear()
RowsetBase.Contains(Row)
RowsetBase.CopyTo(Row[], Int32)
RowsetBase.IsReadOnly
RowsetBase.Remove(Row)
RowsetBase.WriteAsJSON(TextWriter, Int32, JSONWritingOptions)
RowsetBase.Check(Row)
RowsetBase.SearchForRow(Row, Int32)
RowsetBase.DoUpdate(Row, IDataStoreKey, Func<Row, Row, Row>)
RowsetBase.DoUpgrade(Int32, Row, Func<Row, Row, Row>)
RowsetBase.DoUpsert(Row, Func<Row, Boolean>, Func<Row, Row, Row>)
RowsetBase.DoDelete(Row, IDataStoreKey)
RowsetBase.DoKeyRowFromValues<T>(T, Object[])
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()
Namespace: NFX.DataAccess.CRUD
Assembly: NFX.dll
Syntax
[Serializable]
public class Rowset : RowsetBase, IList<Row>, ICollection<Row>, IEnumerable<Row>, IEnumerable, IComparer<Row>, IJSONWritable, IValidatable

Constructors

Rowset(RowsetBase, Func<Row, Boolean>)

Creates a shallow copy from another rowset, optionally applying a filter

Declaration
public Rowset(RowsetBase other, Func<Row, bool> filter = null)
Parameters
Type Name Description
RowsetBase other
System.Func<Row, System.Boolean> filter

Rowset(Schema)

Creates an empty rowset

Declaration
public Rowset(Schema schema)
Parameters
Type Name Description
Schema schema

Properties

SortDefinition

Sort definition is a comma-separated field name list where every field may optionally be prefixed with + for ascending or - for descending sort order specifier. Example: "FirstName,-DOB"

Declaration
public string SortDefinition { get; set; }
Property Value
Type Description
System.String

Methods

Compare(Row, Row)

Declaration
public override int Compare(Row rowA, Row rowB)
Parameters
Type Name Description
Row rowA
Row rowB
Returns
Type Description
System.Int32
Overrides
RowsetBase.Compare(Row, Row)

DoInsert(Row)

Declaration
protected override int DoInsert(Row row)
Parameters
Type Name Description
Row row
Returns
Type Description
System.Int32
Overrides
RowsetBase.DoInsert(Row)

Implements

System.Collections.Generic.IList<T>
System.Collections.Generic.ICollection<T>
System.Collections.Generic.IEnumerable<T>
System.Collections.IEnumerable
System.Collections.Generic.IComparer<T>
IJSONWritable
IValidatable

Extension Methods

CollectionUtils.ForEach<T>(IEnumerable<T>, Action<T>)
CollectionUtils.ForEach<T>(IEnumerable<T>, Action<T, Int32>)
CollectionUtils.SkipLast<T>(IEnumerable<T>)
CollectionUtils.SkipLast<T>(IEnumerable<T>, Int32)
CollectionUtils.FirstMin<TResult, TComparand>(IEnumerable<TResult>, Func<TResult, TComparand>)
CollectionUtils.FirstMin<TResult, TComparand>(IEnumerable<TResult>, Func<TResult, TComparand>, out TComparand)
CollectionUtils.FirstMax<TResult, TComparand>(IEnumerable<TResult>, Func<TResult, TComparand>)
CollectionUtils.FirstMax<TResult, TComparand>(IEnumerable<TResult>, Func<TResult, TComparand>, out TComparand)
CollectionUtils.FirstOrAnyOrDefault<TResult>(IEnumerable<TResult>, Func<TResult, Boolean>)
CollectionUtils.Distinct<TResult, TKey>(IEnumerable<TResult>, Func<TResult, TKey>)
DataUtils.AsEnumerableOf<TRow>(IEnumerable<Row>)
MiscUtils.NonNull<T>(T, Func<Exception>, String)
ObjectValueConversion.AsString(Object, String, ConvertErrorHandling)
ObjectValueConversion.AsNonNullOrEmptyString(Object)
ObjectValueConversion.AsLaconicConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsJSONConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsXMLConfig(Object, ConfigSectionNode, ConvertErrorHandling)
ObjectValueConversion.AsChar(Object, Char, ConvertErrorHandling)
ObjectValueConversion.AsNullableChar(Object, Nullable<Char>, ConvertErrorHandling)
ObjectValueConversion.AsByte(Object, Byte, ConvertErrorHandling)
ObjectValueConversion.AsNullableByte(Object, Nullable<Byte>, ConvertErrorHandling)
ObjectValueConversion.AsSByte(Object, SByte, ConvertErrorHandling)
ObjectValueConversion.AsNullableSByte(Object, Nullable<SByte>, ConvertErrorHandling)
ObjectValueConversion.AsShort(Object, Int16, ConvertErrorHandling)
ObjectValueConversion.AsNullableShort(Object, Nullable<Int16>, ConvertErrorHandling)
ObjectValueConversion.AsUShort(Object, UInt16, ConvertErrorHandling)
ObjectValueConversion.AsNullableUShort(Object, Nullable<UInt16>, ConvertErrorHandling)
ObjectValueConversion.AsInt(Object, Int32, ConvertErrorHandling)
ObjectValueConversion.AsNullableInt(Object, Nullable<Int32>, ConvertErrorHandling)
ObjectValueConversion.AsUInt(Object, UInt32, ConvertErrorHandling)
ObjectValueConversion.AsNullableUInt(Object, Nullable<UInt32>, ConvertErrorHandling)
ObjectValueConversion.AsLong(Object, Int64, ConvertErrorHandling)
ObjectValueConversion.AsNullableLong(Object, Nullable<Int64>, ConvertErrorHandling)
ObjectValueConversion.AsULong(Object, UInt64, ConvertErrorHandling)
ObjectValueConversion.AsNullableULong(Object, Nullable<UInt64>, ConvertErrorHandling)
ObjectValueConversion.AsDouble(Object, Double, ConvertErrorHandling)
ObjectValueConversion.AsNullableDouble(Object, Nullable<Double>, ConvertErrorHandling)
ObjectValueConversion.AsFloat(Object, Single, ConvertErrorHandling)
ObjectValueConversion.AsNullableFloat(Object, Nullable<Single>, ConvertErrorHandling)
ObjectValueConversion.AsDecimal(Object, Decimal, ConvertErrorHandling)
ObjectValueConversion.AsNullableDecimal(Object, Nullable<Decimal>, ConvertErrorHandling)
ObjectValueConversion.AsBool(Object, Boolean, ConvertErrorHandling)
ObjectValueConversion.AsNullableBool(Object, Nullable<Boolean>, ConvertErrorHandling)
ObjectValueConversion.AsGUID(Object, Guid, ConvertErrorHandling)
ObjectValueConversion.AsNullableGUID(Object, Nullable<Guid>, ConvertErrorHandling)
ObjectValueConversion.AsDateTime(Object)
ObjectValueConversion.AsDateTime(Object, DateTime, ConvertErrorHandling)
ObjectValueConversion.AsNullableDateTime(Object, Nullable<DateTime>, ConvertErrorHandling)
ObjectValueConversion.AsGDID(Object)
ObjectValueConversion.AsGDID(Object, GDID, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDID(Object, Nullable<GDID>, ConvertErrorHandling)
ObjectValueConversion.AsGDIDSymbol(Object)
ObjectValueConversion.AsGDIDSymbol(Object, GDIDSymbol, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDIDSymbol(Object, Nullable<GDIDSymbol>, ConvertErrorHandling)
ObjectValueConversion.AsTimeSpan(Object)
ObjectValueConversion.AsTimeSpan(Object, TimeSpan, ConvertErrorHandling)
ObjectValueConversion.AsNullableTimeSpan(Object, Nullable<TimeSpan>, ConvertErrorHandling)
ObjectValueConversion.AsEnum<TEnum>(Object, TEnum, ConvertErrorHandling)
ObjectValueConversion.AsNullableEnum<TEnum>(Object, Nullable<TEnum>, ConvertErrorHandling)
ObjectValueConversion.AsUri(Object, Uri, ConvertErrorHandling)
LookAheadExtensions.AsLookAheadEnumerable<T>(IEnumerable<T>)
JSONExtensions.ToJSON(Object, JSONWritingOptions)
JSONExtensions.ToJSON(Object, TextWriter, JSONWritingOptions)
JSONExtensions.ToJSON(Object, Stream, JSONWritingOptions, Encoding)
ErlObject.ToErlObject(Object)
ErlObject.ToErlObject(Object, ErlTypeOrder, Boolean)
Back to top Copyright © 2006-2018 Agnicore Inc
Generated by DocFX