コード例 #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="AzureStorageBlobRepositoryContext" /> class.
 /// </summary>
 /// <param name="nameOrConnectionString">Either the database name or a connection string.</param>
 /// <param name="containerNameBuilder">The name of the container builder.</param>
 /// <param name="createIfNotExists">Creates the container if it does not exist.</param>
 /// <param name="serializerSettings">The serializer options to use when serializing to JSON.</param>
 public AzureStorageBlobRepositoryContextFactory(string nameOrConnectionString, IAzureStorageBlobContainerNameBuilder containerNameBuilder, bool createIfNotExists, JsonSerializerSettings serializerSettings = null)
 {
     _nameOrConnectionString = Guard.NotEmpty(nameOrConnectionString, nameof(nameOrConnectionString));
     _containerNameBuilder   = Guard.NotNull(containerNameBuilder, nameof(containerNameBuilder));
     _createIfNotExists      = createIfNotExists;
     _serializerSettings     = serializerSettings;
 }
        public AzureStorageBlobRepositoryContext(string connectionString, IAzureStorageBlobContainerNameBuilder containerNameBuilder = null, bool createIfNotExists = false, JsonSerializerSettings serializerSettings = null)
        {
            Guard.NotEmpty(connectionString, nameof(connectionString));

            _containerNameBuilder       = containerNameBuilder ?? new DefaultContainerNameBuilder();
            _createContainerIfNotExists = createIfNotExists;
            _serializerSettings         = serializerSettings;

            Client = new BlobServiceClient(connectionString);
        }
コード例 #3
0
        /// <summary>
        /// Configures the context to use the azure storage blob service with a connection string.
        /// </summary>
        /// <param name="source">The repository options builder.</param>
        /// <param name="connectionString">The connection string.</param>
        /// <param name="containerNameBuilder">The name of the container builder.</param>
        /// <param name="createIfNotExists">Creates the container if it does not exist.</param>
        /// <param name="serializerSettings">The serializer options to use when serializing to JSON.</param>
        /// <returns>The same builder instance.</returns>
        public static RepositoryOptionsBuilder UseAzureStorageBlob([NotNull] this RepositoryOptionsBuilder source, [NotNull] string connectionString, IAzureStorageBlobContainerNameBuilder containerNameBuilder, bool createIfNotExists = false, JsonSerializerSettings serializerSettings = null)
        {
            Guard.NotNull(source, nameof(source));
            Guard.NotEmpty(connectionString, nameof(connectionString));
            Guard.NotNull(containerNameBuilder, nameof(containerNameBuilder));

            source.UseInternalContextFactory(
                new AzureStorageBlobRepositoryContextFactory(connectionString, containerNameBuilder, createIfNotExists, serializerSettings));

            return(source);
        }