Ejemplo n.º 1
0
        /// <summary>
        /// Configures <see cref="IHaveStorage">storage</see> to use a DocumentDB
        /// </summary>
        /// <param name="storage"><see cref="IHaveStorage">Storage</see> to configure</param>
        /// <param name="callback">Chained callback for configuring the specifics</param>
        /// <returns>Chained <see cref="IConfigure"/> for fluent configuration</returns>
        public static IConfigure UsingDocumentDB(this IHaveStorage storage, Action<EntityContextConfiguration> callback)
        {
            var configuration = new EntityContextConfiguration();
            callback(configuration);

            var collectionStrategy = new MultipleEntitiesInOneCollection();

            var connection = new EntityContextConnection(configuration, collectionStrategy);
            configuration.Connection = connection;

            storage.EntityContextConfiguration = configuration;

            Configure.Instance.Container.Bind<ICollectionStrategy>(collectionStrategy);

            return Configure.Instance;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Configures <see cref="IHaveStorage">storage</see> to use a DocumentDB
        /// </summary>
        /// <param name="storage"><see cref="IHaveStorage">Storage</see> to configure</param>
        /// <param name="callback">Chained callback for configuring the specifics</param>
        /// <returns>Chained <see cref="IConfigure"/> for fluent configuration</returns>
        public static IConfigure UsingDocumentDB(this IHaveStorage storage, Action <EntityContextConfiguration> callback)
        {
            var configuration = new EntityContextConfiguration();

            callback(configuration);

            var collectionStrategy = new MultipleEntitiesInOneCollection();

            var connection = new EntityContextConnection(configuration, collectionStrategy);

            configuration.Connection = connection;

            storage.EntityContextConfiguration = configuration;

            Configure.Instance.Container.Bind <ICollectionStrategy>(collectionStrategy);

            return(Configure.Instance);
        }