Beispiel #1
0
        //Realizar a gestao da conexao é muito melhor que deixar na mão do ef.
        static void GerenciarEstadoDaConexao(bool gerenciarEstado)
        {
            using var db = new Curso.Data.ApplicatioContextCidade();
            var time = System.Diagnostics.Stopwatch.StartNew();

            var conexao = db.Database.GetDbConnection();

            conexao.StateChange += (_, __) => ++ _count;

            if (gerenciarEstado)
            {
                conexao.Open();
            }

            for (var i = 0; i < 400; i++)
            {
                db.Cidades.AsNoTracking().Any();
            }

            time.Stop();

            var mensagem = $"Tempo: {time.Elapsed.ToString()}, {gerenciarEstado}, Numero Conexões abertas:{_count}";

            Console.WriteLine(mensagem);
        }
Beispiel #2
0
        //Resolve o problema de se usa mais de um contexto e força a criação da base
        static void GapDoEnsureCreatedComMultiplosContextos()
        {
            using var db1 = new Curso.Data.ApplicationContext();
            using var db2 = new Curso.Data.ApplicatioContextCidade();

            var databaseCreator = db2.GetService <IRelationalDatabaseCreator>();

            databaseCreator.CreateTables();
        }