コード例 #1
0
            public LargeDocumentStore(IDocumentDbAccessProvider dbAccessProvider) : base(dbAccessProvider, false)
            {
                var config = new DocumentStoreConfigBuilder("LargeStore");

                var largeDocumentType = config.AddDocument("LargeDocument");

                var attachmentDocumentType = config.AddDocument("AttachmentDocument");
                var attachmentType         = attachmentDocumentType.AddAttachment("Attachment");

                _largeMapping = config.AddDocumentMapping <LargeDocument>(largeDocumentType.Name)
                                .SetIdMapper(x => x.Id.ToString())
                                .SetPartitionMapper(x => x.Id.ToString())
                                .Finish();

                _smallMapping = config.AddDocumentMapping <SmallDocumentWithLargeAttachment>(attachmentDocumentType.Name)
                                .SetIdMapper(x => x.Id.ToString())
                                .SetPartitionMapper(x => x.Id.ToString())
                                .Finish();

                _attachmentMapping = _smallMapping.AddAttachmentMapping <LargeDocument>(attachmentType.Name)
                                     .Finish();

                _config = config.Finish();
                _client = CreateStoreLogic(DbAccess, _config);

                DbAccess.ConfigRegistry.RegisterStoreConfigSource(this);
            }
コード例 #2
0
        /// <summary>
        /// Creates a new instance of the <see cref="UnversionedDocumentStore"/> class.
        /// </summary>
        /// <param name="dbAccessProvider">The db access provider.</param>
        protected UnversionedDocumentStore(IDocumentDbAccessProvider dbAccessProvider)
        {
            if (dbAccessProvider == null)
            {
                throw new ArgumentNullException(nameof(dbAccessProvider));
            }

            DbAccess = dbAccessProvider.GetDbAccess();
        }
コード例 #3
0
        /// <summary>
        /// Creates a new instance of the <see cref="VersionedDocumentStore"/> class.
        /// </summary>
        /// <param name="dbAccessProvider">The db access provider.</param>
        /// <param name="registerConfigSource">A boolean indicating if the config source should be registered.</param>
        protected VersionedDocumentStore(IDocumentDbAccessProvider dbAccessProvider, bool registerConfigSource)
        {
            if (dbAccessProvider == null)
            {
                throw new ArgumentNullException(nameof(dbAccessProvider));
            }

            DbAccess = dbAccessProvider.GetDbAccess();

            if (registerConfigSource)
            {
                DbAccess.ConfigRegistry.RegisterStoreConfigSource(this);
            }
        }
コード例 #4
0
            public FlowerStore(IDocumentDbAccessProvider dbAccessProvider) : base(dbAccessProvider, false)
            {
                var config = new DocumentStoreConfigBuilder("Flowers");

                var documentType = config.AddDocument("Daisy").Finish();

                _mapping = config.AddDocumentMapping <Daisy>(documentType.DocumentName)
                           .SetIdMapper(x => x.Id.ToString())
                           .SetPartitionMapper(x => x.Id.ToString())
                           .Finish();

                _config = config.Finish();
                _client = CreateStoreLogic(DbAccess, _config);

                DbAccess.ConfigRegistry.RegisterStoreConfigSource(this);
            }
コード例 #5
0
ファイル: OrderStore.cs プロジェクト: cloud-maker-ai/Nebula
        public OrderStore(
            IDocumentDbAccessProvider dbAccessProvider,
            IDocumentMetadataSource metadataSource) : base(dbAccessProvider)
        {
            var config = new DocumentStoreConfigBuilder("Orders");

            var orderDocumentType = config.AddDocument("Order").Finish();

            _orderMapping = config.AddDocumentMapping <Order>(orderDocumentType.DocumentName)
                            .SetIdMapper(x => x.Id.ToString())
                            .SetPartitionMapper(x => x.Id.ToString())
                            .Finish();

            _config = config.Finish();
            _client = CreateStoreLogic(DbAccess, _config, metadataSource);
        }
コード例 #6
0
            public EmailStore(IDocumentDbAccessProvider dbAccessProvider) : base(dbAccessProvider, false)
            {
                var config = new DocumentStoreConfigBuilder("EmailClient");

                var documentType   = config.AddDocument("Email");
                var attachmentType = documentType.AddAttachment("EmailAttachment");

                _mapping = config.AddDocumentMapping <Email>(documentType.Name)
                           .SetIdMapper(x => x.Id.ToString())
                           .SetPartitionMapper(x => x.Id.ToString())
                           .Finish();

                _attachmentMapping = _mapping.AddAttachmentMapping <EmailAttachment>(attachmentType.Name)
                                     .Finish();

                _config = config.Finish();
                _client = CreateStoreLogic(DbAccess, _config);

                DbAccess.ConfigRegistry.RegisterStoreConfigSource(this);
            }
コード例 #7
0
            public DocumentStore(IDocumentDbAccessProvider dbAccessProvider) : base(dbAccessProvider)
            {
                var config = new DocumentStoreConfigBuilder("Documents");

                var documentType  = config.AddDocument("Document1");
                var document2Type = config.AddDocument("Document2");

                _documentMapping = config.AddDocumentMapping <Document1>(documentType.Name)
                                   .SetIdMapper(x => x.Id.ToString())
                                   .SetPartitionMapper(x => x.Id.ToString())
                                   .Finish();

                _document2Mapping = config.AddDocumentMapping <Document2>(document2Type.Name)
                                    .SetIdMapper(x => x.Id.ToString())
                                    .SetPartitionMapper(x => x.Id.ToString())
                                    .Finish();

                _config = config.Finish();
                _client = CreateStoreLogic(DbAccess, _config);
            }
コード例 #8
0
        public FlowerStore(
            IDocumentDbAccessProvider dbAccessProvider,
            IDocumentMetadataSource metadataSource) : base(dbAccessProvider, false)
        {
            var config = new DocumentStoreConfigBuilder("Flowers");

            var daisyDocumentType = config.AddDocument("Daisy").Finish();
            var roseDocumentType  = config.AddDocument("Rose").Finish();

            _daisyMapping = config.AddDocumentMapping <Daisy>(daisyDocumentType.DocumentName)
                            .SetIdMapper(x => x.Id.ToString())
                            .SetPartitionMapper(x => x.Id.ToString())
                            .Finish();

            _gardenMapping = config.AddDocumentMapping <Garden>(roseDocumentType.DocumentName)
                             .SetIdMapper(x => x.Id.ToString())
                             .SetPartitionMapper(x => x.Id.ToString())
                             .Finish();

            _config = config.Finish();
            _client = CreateStoreLogic(DbAccess, _config, metadataSource);
        }
コード例 #9
0
            public FruitStore(IDocumentDbAccessProvider dbAccessProvider, IDocumentMetadataSource metadataSource)
                : base(dbAccessProvider, false)
            {
                var config = new DocumentStoreConfigBuilder("Fruit");

                var appleDocumentType = config.AddDocument("Apple").Finish();
                var pearDocumentType  = config.AddDocument("Pear").Finish();

                _appleMapping = config.AddDocumentMapping <Apple>(appleDocumentType.DocumentName)
                                .SetIdMapper(x => x.Id.ToString())
                                .SetPartitionMapper(x => x.Id.ToString())
                                .Finish();

                _pearMapping = config.AddDocumentMapping <Pear>(pearDocumentType.DocumentName)
                               .SetIdMapper(x => x.Id.ToString())
                               .SetPartitionMapper(x => x.Id.ToString())
                               .Finish();

                _config = config.Finish();
                _client = CreateStoreLogic(DbAccess, _config, metadataSource);

                DbAccess.ConfigRegistry.RegisterStoreConfigSource(this);
            }
コード例 #10
0
 public FruitStore(IDocumentDbAccessProvider dbAccessProvider)
     : this(dbAccessProvider, null)
 {
 }
コード例 #11
0
 /// <summary>
 /// Creates a new instance of the <see cref="VersionedDocumentStore"/> class.
 /// </summary>
 /// <param name="dbAccessProvider">The db access provider.</param>
 protected VersionedDocumentStore(IDocumentDbAccessProvider dbAccessProvider)
     : this(dbAccessProvider, false)
 {
 }