123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- using Microsoft.Azure.Cosmos;
- using Microsoft.Extensions.DependencyInjection;
- using System;
- using System.Collections.Generic;
- using System.Text;
- using TEAMModelOS.SDK.Module.AzureCosmosDB.Configuration;
- using TEAMModelOS.SDK.Module.AzureCosmosDB.Interfaces;
- namespace TEAMModelOS.SDK.Module.AzureCosmosDBV3
- {
- public static class AzureCosmosDBServiceCollectionExtensions
- {
- /// <summary>
- ///
- /// </summary>
- /// <param name="services"></param>
- /// <returns></returns>
- private static AzureCosmosDBServiceBuilder AddCosmosDBServerBuilder(this IServiceCollection services)
- {
- return new AzureCosmosDBServiceBuilder(services);
- }
- /// <summary>
- ///
- /// </summary>
- /// <param name="services"></param>
- /// <returns></returns>
- public static AzureCosmosDBServiceBuilder AddAzureCosmosDBV3(this IServiceCollection services)
- {
- var builder = services.AddCosmosDBServerBuilder();
- services.AddSingleton<IAzureCosmosDBV3Repository, AzureCosmosDBV3Repository>();
- return builder;
- }
-
- /// <summary>
- ///
- /// </summary>
- /// <param name="builder"></param>
- /// <param name="_connectionString"></param>
- /// <returns></returns>
- public static AzureCosmosDBServiceBuilder AddCosmosDBV3Connection(this AzureCosmosDBServiceBuilder builder, AzureCosmosDBOptions databaseOptions)
- {
- builder.Services.AddSingleton(databaseOptions);
- return builder;
- }
- /// <summary>
- /// CosmosJsonDotNetSerializer SystemTextJsonCosmosSerializer
- /// </summary>
- /// <param name="builder"></param>
- /// <param name="_connectionString"></param>
- /// <returns></returns>
- public static AzureCosmosDBServiceBuilder AddCosmosSerializer(this AzureCosmosDBServiceBuilder builder, CosmosSerializer databaseOptions)
- {
- builder.Services.AddSingleton(databaseOptions);
- return builder;
- }
- }
- }
|