Ejemplo n.º 1
0
        private static void InitializeRepoDb()
        {
            var provider = MixService.GetEnumConfig <MixDatabaseProvider>(MixConstants.CONST_SETTING_DATABASE_PROVIDER);

            switch (provider)
            {
            case MixDatabaseProvider.MSSQL:
                SqlServerBootstrap.Initialize();
                break;

            case MixDatabaseProvider.MySQL:
                MySqlBootstrap.Initialize();
                break;

            case MixDatabaseProvider.PostgreSQL:
                PostgreSqlBootstrap.Initialize();
                break;

            case MixDatabaseProvider.SQLITE:
                SqLiteBootstrap.Initialize();
                break;

            default:
                SqLiteBootstrap.Initialize();
                break;
            }
        }
Ejemplo n.º 2
0
        static async Task Main(string[] args)
        {
            var serviceProvider = new ServiceCollection()
                                  .AddMediatR(Assembly.GetExecutingAssembly())
                                  .AddSingleton <IQueryBus, QueryBus>()
                                  .BuildServiceProvider();

            MySqlBootstrap.Initialize();

            var queryBus = serviceProvider.GetService <IQueryBus>();

            if (queryBus is null)
            {
                return;
            }

            Console.WriteLine("People");

            var people = await queryBus.Send <GetPersonList, IEnumerable <PersonListItemRecord> >(new GetPersonList());

            foreach (var person in people)
            {
                Console.WriteLine($"{person.Id} {person.LastName} {person.AddressesCount}");
            }

            Console.WriteLine("Person with id = 2");

            var personDetails = await queryBus.Send <GetPersonDetails, PersonDetailsRecord>(new GetPersonDetails(2));

            Console.WriteLine($"{personDetails.FirstName} {personDetails.LastName}");
        }
Ejemplo n.º 3
0
        // This method gets called by the runtime. Use this method to add services to the container.

        public void ConfigureServices(IServiceCollection services)
        {
            SqlServerBootstrap.Initialize();
            PostgreSqlBootstrap.Initialize();
            MySqlBootstrap.Initialize();

            #region dependency injection

            services.AddTransient <IDatabaseConnectionFactory, NorthWindDbConnectionFactory>();
            services.AddTransient <IDatabaseConnectionFactory, AdemBlogDbConnectionFactory>();
            services.AddTransient <IDatabaseConnectionFactory, FinansDbConnectionFactory>();
            services.AddTransient <IDatabaseConnectionFactory, BookStoreDbConnectionFactory>();

            services.AddTransient <ICategoryService, CategoryManager>();
            services.AddTransient <ICategoryDal, CategoryDal>();

            services.AddTransient <ICashboxService, CashboxManager>();
            services.AddTransient <ICashboxDal, CashboxDal>();

            services.AddTransient <ITagService, TagManager>();
            services.AddTransient <ITagDal, TagDal>();

            services.AddTransient <IPostService, PostManager>();
            services.AddTransient <IPostDal, PostDal>();

            services.AddTransient <IBookService, BookManager>();
            services.AddTransient <IBookDal, BookDal>();

            #endregion dependency injection

            services.AddControllersWithViews();
        }
Ejemplo n.º 4
0
 /// <summary>
 /// SQLite wrapped Model repository.
 /// </summary>
 /// <param name="connectionString">Connection string to SQLite database file.</param>
 public MySqlRepository(string connectionString)
 {
     _connectionString = connectionString;
     if (!MySqlBootstrap.IsInitialized)
     {
         MySqlBootstrap.Initialize();
     }
 }
        public void Init(string connectionString, DatabaseProvider databaseType)
        {
            DatabaseProvider = databaseType;
            conn             = DatabaseProvider.GetAndConfigureConnection(connectionString, (connection, dbType) =>
            {
                switch (dbType)
                {
                case DatabaseProvider.MySqlData:
                    MySqlBootstrap.Initialize();
                    break;

                case DatabaseProvider.Npgsql:
                    PostgreSqlBootstrap.Initialize();
                    break;

                case DatabaseProvider.SystemData:
                    {
                        var dbSetting = new SqlServerDbSetting();
                        DbSettingMapper.Add(typeof(System.Data.SqlClient.SqlConnection), dbSetting, true);

                        // Map the DbHelper
                        var dbHelper = new SqlServerDbHelper();
                        DbHelperMapper.Add(typeof(System.Data.SqlClient.SqlConnection), dbHelper, true);

                        // Map the Statement Builder
                        var statementBuilder = new SqlServerStatementBuilder(dbSetting);
                        StatementBuilderMapper.Add(typeof(System.Data.SqlClient.SqlConnection), statementBuilder, true);
                        break;
                    }

                case DatabaseProvider.MicrosoftData:
                    {
                        var dbSetting = new SqlServerDbSetting();
                        DbSettingMapper.Add(typeof(Microsoft.Data.SqlClient.SqlConnection), dbSetting, true);

                        // Map the DbHelper
                        var dbHelper = new SqlServerDbHelper();
                        DbHelperMapper.Add(typeof(Microsoft.Data.SqlClient.SqlConnection), dbHelper, true);

                        // Map the Statement Builder
                        var statementBuilder = new SqlServerStatementBuilder(dbSetting);
                        StatementBuilderMapper.Add(typeof(Microsoft.Data.SqlClient.SqlConnection), statementBuilder, true);
                        break;
                    }

                case DatabaseProvider.MySqlConnector:
                    MySqlConnectorBootstrap.Initialize();
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }

                connection.Open();
                return(connection);
            });
        }
Ejemplo n.º 6
0
        static void Main(string[] args)
        {
            var config = new ConfigurationBuilder()
                         .SetBasePath(Directory.GetCurrentDirectory())
                         .AddJsonFile("appConfigs.json", optional: false, reloadOnChange: true)
                         .Build();

            MergeConfig.Instance.Add(new ConfigurationBridge(config));

            MySqlBootstrap.Initialize();

            var program = new Program();

            program.Run();
        }
Ejemplo n.º 7
0
        public static void Initialize()
        {
            // Get the connection string
            var connectionStringForSys = Environment.GetEnvironmentVariable("REPODB_CONSTR_SYS", EnvironmentVariableTarget.Process);
            var connectionString       = Environment.GetEnvironmentVariable("REPODB_CONSTR", EnvironmentVariableTarget.Process);

            // Set the connection string
            ConnectionStringForSys = (connectionStringForSys ?? @"Server=localhost;Database=sys;Uid=user;Pwd=Password123;");
            ConnectionString       = (connectionString ?? @"Server=localhost;Database=RepoDb;Uid=user;Pwd=Password123;");

            // Initialize MySql
            MySqlBootstrap.Initialize();

            // Create databases
            CreateDatabase();

            // Create tables
            CreateTables();
        }
Ejemplo n.º 8
0
        public App()
        {
            var bridge = new ConfigurationBuilder()
                         .SetBasePath(Directory.GetCurrentDirectory())
                         .AddJsonFile("appConfigs.json", optional: false, reloadOnChange: true)
                         .Build();

            MergeConfig.Instance.Add(new ConfigurationBridge(bridge));

            MySqlBootstrap.Initialize();

            var config           = MergeConfig.Instance;
            var host             = config.CombineReadString("mysql:host");
            var database         = config.CombineReadString("mysql:database");
            var userName         = config.CombineReadString("mysql:username");
            var password         = config.CombineReadString("mysql:password");
            var connectionString = $"Server={host};Database={database};Uid={userName};Pwd={password};";

            Connection = new MySqlConnection(connectionString);
        }
Ejemplo n.º 9
0
 public void Initialize()
 {
     MySqlBootstrap.Initialize();
 }