/// <summary>
        /// Use the MySqlAggregateSnapshotter as the IAggregateSnapshotter.
        /// </summary>
        public static ENodeConfiguration UseMySqlAggregateSnapshotter(this ENodeConfiguration eNodeConfiguration)
        {
            eNodeConfiguration.UseAggregateSnapshotter();

            eNodeConfiguration.GetCommonConfiguration().SetDefault <ISnapshotMySqlConfiguration, SnapshotMySqlConfiguration>();
            eNodeConfiguration.GetCommonConfiguration().SetDefault <ISnapshotRepository, SnapshotRepository>();
            eNodeConfiguration.GetCommonConfiguration().SetDefault <IAggregateSnapshotStore, MySqlAggregateSnapshotStore>();
            return(eNodeConfiguration);
        }
        /// <summary>
        /// Use the MongoDbAggregateSnapshotter as the IAggregateSnapshotter.
        /// </summary>
        /// <returns></returns>
        public static ENodeConfiguration UseMongoDbAggregateSnapshotter(this ENodeConfiguration eNodeConfiguration)
        {
            eNodeConfiguration.UseAggregateSnapshotter();

            eNodeConfiguration.GetCommonConfiguration().SetDefault <ISnapshotMongoDbConfiguration, SnapshotMongoDbConfiguration>();
            eNodeConfiguration.GetCommonConfiguration().SetDefault <ISnapshotMongoDbProvider, SnapshotMongoDbProvider>();
            eNodeConfiguration.GetCommonConfiguration().SetDefault <ISnapshotCollectionConfiguration, SnapshotCollectionConfiguration>();
            eNodeConfiguration.GetCommonConfiguration().SetDefault <ISnapshotCollection, SnapshotCollection>();
            eNodeConfiguration.GetCommonConfiguration().SetDefault <IAggregateSnapshotStore, MongoDbAggregateSnapshotStore>();
            return(eNodeConfiguration);
        }