Show / Hide Table of Contents

Class MongoDBDataStore

Implements MongoDB general data store that supports CRUD operations. This class IS thread-safe load/save/delete operations

Inheritance
System.Object
DisposableObject
ApplicationComponent
MongoDBDataStoreBase
MongoDBDataStore
Implements
ICRUDDataStoreImplementation
ICRUDDataStore
ICRUDOperations
ICRUDTransactionOperations
IDataStoreImplementation
IDataStore
IApplicationComponent
System.IDisposable
IConfigurable
IInstrumentable
IExternallyParameterized
Inherited Members
MongoDBDataStoreBase.Name
MongoDBDataStoreBase.InstrumentationEnabled
MongoDBDataStoreBase.ExternalParameters
MongoDBDataStoreBase.ExternalParametersForGroups(String[])
MongoDBDataStoreBase.ExternalGetParameter(String, Object, String[])
MongoDBDataStoreBase.ExternalSetParameter(String, Object, String[])
MongoDBDataStoreBase.ConnectString
MongoDBDataStoreBase.DatabaseName
MongoDBDataStoreBase.LogLevel
MongoDBDataStoreBase.TargetName
MongoDBDataStoreBase.TestConnection()
MongoDBDataStoreBase.GetDatabase()
ApplicationComponent.Destructor()
ApplicationComponent.AllComponents
ApplicationComponent.GetAppComponentBySID(UInt64)
ApplicationComponent.GetAppComponentByCommonName(String)
ApplicationComponent.ComponentSID
ApplicationComponent.ComponentStartTime
ApplicationComponent.ComponentCommonName
ApplicationComponent.ComponentDirector
DisposableObject.DisposeAndNull<T>(T)
DisposableObject.DisposeStarted
DisposableObject.Disposed
DisposableObject.EnsureObjectNotDisposed()
DisposableObject.Dispose()
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.MongoDB
Assembly: NFX.MongoDB.dll
Syntax
public class MongoDBDataStore : MongoDBDataStoreBase, ICRUDDataStoreImplementation, ICRUDDataStore, ICRUDOperations, ICRUDTransactionOperations, IDataStoreImplementation, IDataStore, IApplicationComponent, IDisposable, IConfigurable, IInstrumentable, IExternallyParameterized

Constructors

MongoDBDataStore()

Declaration
public MongoDBDataStore()

MongoDBDataStore(String, String)

Declaration
public MongoDBDataStore(string connectString, string dbName)
Parameters
Type Name Description
System.String connectString
System.String dbName

Fields

SCRIPT_FILE_SUFFIX

Declaration
public const string SCRIPT_FILE_SUFFIX = ".mon.json"
Field Value
Type Description
System.String

Properties

Converter

Declaration
public RowConverter Converter { get; }
Property Value
Type Description
RowConverter

QueryResolver

Declaration
public ICRUDQueryResolver QueryResolver { get; }
Property Value
Type Description
ICRUDQueryResolver

ScriptFileSuffix

Declaration
public virtual string ScriptFileSuffix { get; }
Property Value
Type Description
System.String

StoreType

Declaration
public virtual CRUDDataStoreType StoreType { get; }
Property Value
Type Description
CRUDDataStoreType

SupportsTransactions

Declaration
public virtual bool SupportsTransactions { get; }
Property Value
Type Description
System.Boolean

SupportsTrueAsynchrony

Declaration
public virtual bool SupportsTrueAsynchrony { get; }
Property Value
Type Description
System.Boolean

Methods

BeginTransaction(IsolationLevel, TransactionDisposeBehavior)

Declaration
public virtual CRUDTransaction BeginTransaction(IsolationLevel iso = IsolationLevel.ReadCommitted, TransactionDisposeBehavior behavior = TransactionDisposeBehavior.CommitOnDispose)
Parameters
Type Name Description
System.Data.IsolationLevel iso
TransactionDisposeBehavior behavior
Returns
Type Description
CRUDTransaction

BeginTransactionAsync(IsolationLevel, TransactionDisposeBehavior)

Declaration
public virtual Task<CRUDTransaction> BeginTransactionAsync(IsolationLevel iso = IsolationLevel.ReadCommitted, TransactionDisposeBehavior behavior = TransactionDisposeBehavior.CommitOnDispose)
Parameters
Type Name Description
System.Data.IsolationLevel iso
TransactionDisposeBehavior behavior
Returns
Type Description
System.Threading.Tasks.Task<CRUDTransaction>

CheckCRUDResult(CRUDResult, String, String)

Declaration
public static void CheckCRUDResult(CRUDResult result, string schema, string operation)
Parameters
Type Name Description
CRUDResult result
System.String schema
System.String operation

Configure(IConfigSectionNode)

Declaration
public override void Configure(IConfigSectionNode node)
Parameters
Type Name Description
IConfigSectionNode node
Overrides
MongoDBDataStoreBase.Configure(IConfigSectionNode)

Delete(Row, IDataStoreKey)

Declaration
public int Delete(Row row, IDataStoreKey key = null)
Parameters
Type Name Description
Row row
IDataStoreKey key
Returns
Type Description
System.Int32

DeleteAsync(Row, IDataStoreKey)

Declaration
public virtual Task<int> DeleteAsync(Row row, IDataStoreKey key = null)
Parameters
Type Name Description
Row row
IDataStoreKey key
Returns
Type Description
System.Threading.Tasks.Task<System.Int32>

DoDelete(Database, Row, IDataStoreKey)

Declaration
protected virtual int DoDelete(Database db, Row row, IDataStoreKey key)
Parameters
Type Name Description
Database db
Row row
IDataStoreKey key
Returns
Type Description
System.Int32

DoInsert(Database, Row, FieldFilterFunc)

Declaration
protected virtual int DoInsert(Database db, Row row, FieldFilterFunc filter = null)
Parameters
Type Name Description
Database db
Row row
FieldFilterFunc filter
Returns
Type Description
System.Int32

DoUpdate(Database, Row, IDataStoreKey, FieldFilterFunc)

Declaration
protected virtual int DoUpdate(Database db, Row row, IDataStoreKey key, FieldFilterFunc filter = null)
Parameters
Type Name Description
Database db
Row row
IDataStoreKey key
FieldFilterFunc filter
Returns
Type Description
System.Int32

DoUpsert(Database, Row, FieldFilterFunc)

Declaration
protected virtual int DoUpsert(Database db, Row row, FieldFilterFunc filter = null)
Parameters
Type Name Description
Database db
Row row
FieldFilterFunc filter
Returns
Type Description
System.Int32

ExecuteWithoutFetch(Query[])

Declaration
public virtual int ExecuteWithoutFetch(params Query[] queries)
Parameters
Type Name Description
Query[] queries
Returns
Type Description
System.Int32

ExecuteWithoutFetchAsync(Query[])

Declaration
public virtual Task<int> ExecuteWithoutFetchAsync(params Query[] queries)
Parameters
Type Name Description
Query[] queries
Returns
Type Description
System.Threading.Tasks.Task<System.Int32>

GetCollectionName(Schema)

Declaration
protected string GetCollectionName(Schema schema)
Parameters
Type Name Description
Schema schema
Returns
Type Description
System.String

GetSchema(Query)

Declaration
public virtual Schema GetSchema(Query query)
Parameters
Type Name Description
Query query
Returns
Type Description
Schema

GetSchemaAsync(Query)

Declaration
public virtual Task<Schema> GetSchemaAsync(Query query)
Parameters
Type Name Description
Query query
Returns
Type Description
System.Threading.Tasks.Task<Schema>

Insert(Row, FieldFilterFunc)

Declaration
public virtual int Insert(Row row, FieldFilterFunc filter = null)
Parameters
Type Name Description
Row row
FieldFilterFunc filter
Returns
Type Description
System.Int32

InsertAsync(Row, FieldFilterFunc)

Declaration
public virtual Task<int> InsertAsync(Row row, FieldFilterFunc filter = null)
Parameters
Type Name Description
Row row
FieldFilterFunc filter
Returns
Type Description
System.Threading.Tasks.Task<System.Int32>

Load(Query[])

Declaration
public virtual List<RowsetBase> Load(params Query[] queries)
Parameters
Type Name Description
Query[] queries
Returns
Type Description
System.Collections.Generic.List<RowsetBase>

LoadAsync(Query[])

Declaration
public virtual Task<List<RowsetBase>> LoadAsync(params Query[] queries)
Parameters
Type Name Description
Query[] queries
Returns
Type Description
System.Threading.Tasks.Task<System.Collections.Generic.List<RowsetBase>>

LoadOneRow(Query)

Declaration
public virtual Row LoadOneRow(Query query)
Parameters
Type Name Description
Query query
Returns
Type Description
Row

LoadOneRowAsync(Query)

Declaration
public virtual Task<Row> LoadOneRowAsync(Query query)
Parameters
Type Name Description
Query query
Returns
Type Description
System.Threading.Tasks.Task<Row>

LoadOneRowset(Query)

Declaration
public virtual RowsetBase LoadOneRowset(Query query)
Parameters
Type Name Description
Query query
Returns
Type Description
RowsetBase

LoadOneRowsetAsync(Query)

Declaration
public virtual Task<RowsetBase> LoadOneRowsetAsync(Query query)
Parameters
Type Name Description
Query query
Returns
Type Description
System.Threading.Tasks.Task<RowsetBase>

MakeScriptQueryHandler(QuerySource)

Declaration
public CRUDQueryHandler MakeScriptQueryHandler(QuerySource querySource)
Parameters
Type Name Description
QuerySource querySource
Returns
Type Description
CRUDQueryHandler

OpenCursor(Query)

Declaration
public virtual Cursor OpenCursor(Query query)
Parameters
Type Name Description
Query query
Returns
Type Description
Cursor

OpenCursorAsync(Query)

Declaration
public virtual Task<Cursor> OpenCursorAsync(Query query)
Parameters
Type Name Description
Query query
Returns
Type Description
System.Threading.Tasks.Task<Cursor>

Save(RowsetBase[])

Declaration
public virtual int Save(params RowsetBase[] rowsets)
Parameters
Type Name Description
RowsetBase[] rowsets
Returns
Type Description
System.Int32

SaveAsync(RowsetBase[])

Declaration
public virtual Task<int> SaveAsync(params RowsetBase[] rowsets)
Parameters
Type Name Description
RowsetBase[] rowsets
Returns
Type Description
System.Threading.Tasks.Task<System.Int32>

Update(Row, IDataStoreKey, FieldFilterFunc)

Declaration
public virtual int Update(Row row, IDataStoreKey key = null, FieldFilterFunc filter = null)
Parameters
Type Name Description
Row row
IDataStoreKey key
FieldFilterFunc filter
Returns
Type Description
System.Int32

UpdateAsync(Row, IDataStoreKey, FieldFilterFunc)

Declaration
public virtual Task<int> UpdateAsync(Row row, IDataStoreKey key = null, FieldFilterFunc filter = null)
Parameters
Type Name Description
Row row
IDataStoreKey key
FieldFilterFunc filter
Returns
Type Description
System.Threading.Tasks.Task<System.Int32>

Upsert(Row, FieldFilterFunc)

Declaration
public virtual int Upsert(Row row, FieldFilterFunc filter = null)
Parameters
Type Name Description
Row row
FieldFilterFunc filter
Returns
Type Description
System.Int32

UpsertAsync(Row, FieldFilterFunc)

Declaration
public virtual Task<int> UpsertAsync(Row row, FieldFilterFunc filter = null)
Parameters
Type Name Description
Row row
FieldFilterFunc filter
Returns
Type Description
System.Threading.Tasks.Task<System.Int32>

Implements

ICRUDDataStoreImplementation
ICRUDDataStore
ICRUDOperations
ICRUDTransactionOperations
IDataStoreImplementation
IDataStore
IApplicationComponent
System.IDisposable
IConfigurable
IInstrumentable
IExternallyParameterized

Extension Methods

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)
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