Пример #1
0
        public void InstanceTest()
        {
            SqlClientFactory instance = SqlClientFactory.Instance;

            Assert.NotNull(instance);
            Assert.Same(instance, SqlClientFactory.Instance);
        }
Пример #2
0
        public IActionResult ExecuteQuery(string type, string query)
        {
            var factory = (IDatabaseFactory)null;


            if (string.IsNullOrEmpty(AppSettings.FactoryType))
            {
                if (type == "sqlclient")
                {
                    factory = new SqlClientFactory();
                }
                else
                {
                    // factory = new OleDbFactory();
                }
            }
            else
            {
                factory = (IDatabaseFactory)Activator.CreateInstance(Type.GetType(AppSettings.FactoryType));
            }

            var helper = new DatabaseHelper(factory);

            if (query.ToLower().StartsWith("select"))
            {
                var reader = helper.ExecuteSelect(query);
                return(View("ShowTable", reader));
            }
            else
            {
                var i = helper.ExecuteAction(query);
                return(View("ShowResult", i));
            }
        }
Пример #3
0
        public void InstantiateUnderlyingSession_CosmosDbConnectionString_ISession()
        {
            var factory = new SqlClientFactory();
            var session = factory.Instantiate($"Endpoint=https://xyz.graphs.azure.com:443;AuthKey={base64AuthKey};database=db;collection=FoF;api=sql");

            Assert.That(session.UnderlyingSessionType, Is.EqualTo(typeof(SqlClientOperation)));
        }
Пример #4
0
        public void Execute_Edge_DataSetFilled()
        {
            SqlClient           session          = new SqlClientFactory().Instantiate(ConnectionStringReader.GetLocaleSql()) as SqlClient;
            var                 statement        = Mock.Of <IQuery>(x => x.Statement == "SELECT * FROM FoF f WHERE f.label='knows'");
            SqlCommandOperation commandOperation = new SqlCommandFactory().Instantiate(session, statement).Implementation as SqlCommandOperation;

            var engine = new SqlExecutionEngine(session.CreateClientOperation(), commandOperation);

            var ds = engine.Execute();

            Assert.That(ds.Tables, Has.Count.EqualTo(1));
            Assert.That(ds.Tables[0].Rows, Has.Count.EqualTo(3));

            Assert.That(ds.Tables[0].Columns, Has.Count.EqualTo(12));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("id"));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("label"));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("_sink"));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("_vertexId"));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("_sinkLabel"));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("_vertexLabel"));

            foreach (DataRow row in ds.Tables[0].Rows)
            {
                Assert.That(row["id"], Is.Not.Null.Or.Empty);
                Assert.That(row["_vertexLabel"], Is.EqualTo("person"));
                Assert.That(row["_sinkLabel"], Is.EqualTo("person"));
                Assert.That(row["_isEdge"], Is.True);
            }
        }
Пример #5
0
        public void InstantiateCreate_CosmosDbConnectionStringWithoutBase64Encoding_NBiException()
        {
            var factory = new SqlClientFactory();
            var session = factory.Instantiate($"Endpoint=https://xyz.graphs.azure.com:443;AuthKey=@uthK3y;database=db;collection=FoF;api=sql");

            Assert.Throws <Exception>(() => session.CreateNew());
        }
Пример #6
0
        public User Get(string login, string password)
        {
            var factory = new SqlClientFactory();

            using (var connection = factory.CreateConnection())
            {
                var command = factory.CreateCommand();
                command.Connection  = connection;
                command.CommandType = CommandType.Text;
                command.CommandText = "select * from tb_user where login =@login and password=@password";
                command.Parameters.Add(new SqlParameter("@login", login));
                command.Parameters.Add(new SqlParameter("@password", password));
                try
                {
                    connection.Open();
                    var reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        var objUser = GetFromReader(reader);
                        return(objUser);
                    }
                    return(null);
                }
                catch
                {
                    return(null);
                }
            }
        }
        public IActionResult ExecuteQueryConfig(string query)
        {
            IDatabaseFactory factory = null;

            string factorytype = AppSettings.Factory;


            if (factorytype == "sqlclient")
            {
                factory = new SqlClientFactory();
            }
            else
            {
                factory = new OleDbFactory();
            }

            DatabaseHelper helper = new DatabaseHelper(factory);

            query = query.ToLower();

            if (query.StartsWith("select"))
            {
                DbDataReader reader = helper.ExecuteSelect(query);
                return(View("ShowTable", reader));
            }
            else
            {
                int i = helper.ExecuteAction(query);
                return(View("ShowResult", i));
            }
        }
Пример #8
0
        /**/
        private bool mensajeError = true;

        public bool MensajeError {
            get { return(mensajeError); }
            set { mensajeError = value; }
        }

        /**/
        public DatabaseHelper(string connectionstring, Providers provider)
        {
            strConnectionString = connectionstring;
            switch (provider)
            {
            case Providers.SqlServer:
                objFactory = SqlClientFactory.Instance;
                break;

            case Providers.ConfigDefined:

                string providername = ConfigurationManager.ConnectionStrings["DGP_cs"].ProviderName;
                switch (providername)
                {
                case "System.Data.SqlClient":
                    objFactory = SqlClientFactory.Instance;
                    break;
                }
                break;
            }
            objConnection = (SqlConnection)objFactory.CreateConnection();
            objCommand    = (SqlCommand)objFactory.CreateCommand();

            objConnection.ConnectionString = strConnectionString;
            objCommand.Connection          = objConnection;
        }
Пример #9
0
        public void Instantiate_CosmosDbSql_SqlClient()
        {
            var factory = new SqlClientFactory();
            var session = factory.Instantiate("Endpoint=https://xyz.graphs.azure.com:443;AuthKey=@uthk3y;database=db;collection=FoF;api=sql");

            Assert.That(session, Is.Not.Null);
            Assert.That(session, Is.TypeOf <SqlClient>());
        }
Пример #10
0
        public void CreatePermissionTest()
        {
            SqlClientFactory     factory = SqlClientFactory.Instance;
            CodeAccessPermission permission, perm;

            permission = factory.CreatePermission(PermissionState.None);
            perm       = factory.CreatePermission(PermissionState.Unrestricted);
            Assert.AreEqual(false, perm.IsSubsetOf(permission), "#1");
        }
Пример #11
0
        public void InstantiateCreate_CosmosDbConnectionString_ISession()
        {
            var factory           = new SqlClientFactory();
            var session           = factory.Instantiate($"Endpoint=https://xyz.graphs.azure.com:443;AuthKey={base64AuthKey};database=db;collection=FoF;api=sql");
            var underlyingSession = session.CreateNew();

            Assert.That(underlyingSession, Is.Not.Null);
            Assert.That(underlyingSession, Is.AssignableTo <SqlClientOperation>());
        }
Пример #12
0
        private void MainForm_Load(object sender, EventArgs e)
        {
            SqlClientFactory factory = SqlClientFactory.Instance;

            DbConnection connection = factory.CreateConnection();
            DbCommand    command    = factory.CreateCommand();

            command.Connection  = connection;
            command.CommandText = "query here";
            command.ExecuteNonQuery();
        }
Пример #13
0
        public void Execute_NullString_ScalarReturned()
        {
            SqlClient           session       = new SqlClientFactory().Instantiate(ConnectionStringReader.GetLocaleSql()) as SqlClient;
            var                 statement     = Mock.Of <IQuery>(x => x.Statement == "SELECT VALUE p.lastName[0]._value FROM ROOT p WHERE p.label = 'person' and p.firstName[0]._value = 'Thomas'");
            SqlCommandOperation cosmosdbQuery = new SqlCommandFactory().Instantiate(session, statement).Implementation as SqlCommandOperation;

            var engine = new SqlExecutionEngine(session.CreateClientOperation(), cosmosdbQuery);

            var count = engine.ExecuteScalar();

            Assert.That(count, Is.Null);
        }
Пример #14
0
        public void Execute_Integer_ScalarReturned()
        {
            SqlClient           session       = new SqlClientFactory().Instantiate(ConnectionStringReader.GetLocaleSql()) as SqlClient;
            var                 statement     = Mock.Of <IQuery>(x => x.Statement == "SELECT VALUE count(1) FROM FoF f WHERE f.label='person'");
            SqlCommandOperation cosmosdbQuery = new SqlCommandFactory().Instantiate(session, statement).Implementation as SqlCommandOperation;

            var engine = new SqlExecutionEngine(session.CreateClientOperation(), cosmosdbQuery);

            var age = engine.ExecuteScalar();

            Assert.That(age, Is.EqualTo(4));
        }
Пример #15
0
        public void Execute_ListOfString_ListReturned()
        {
            SqlClient           session       = new SqlClientFactory().Instantiate(ConnectionStringReader.GetLocaleSql()) as SqlClient;
            var                 statement     = Mock.Of <IQuery>(x => x.Statement == "SELECT VALUE p.lastName[0]._value FROM ROOT p WHERE p.label = 'person'");
            SqlCommandOperation cosmosdbQuery = new SqlCommandFactory().Instantiate(session, statement).Implementation as SqlCommandOperation;

            var engine = new SqlExecutionEngine(session.CreateClientOperation(), cosmosdbQuery);

            var count = engine.ExecuteList <object>();

            Assert.That(count, Has.Member("Andersen"));
            Assert.That(count, Has.Member("Miller"));
            Assert.That(count, Has.Member("Wakefield"));
        }
Пример #16
0
        public void Instantiate_NoParameter_CorrectResultSet()
        {
            var client = new SqlClientFactory().Instantiate(ConnectionStringReader.GetLocaleSql()) as SqlClient;
            var query  = Mock.Of <IQuery>(
                x => x.Statement == "SELECT * FROM FoF f WHERE f.label='person'"
                );
            var factory   = new SqlCommandFactory();
            var command   = (factory.Instantiate(client, query, null).Implementation) as SqlCommandOperation;
            var statement = command.Create();

            var clientOperation = client.CreateClientOperation();
            var results         = clientOperation.Run(statement);

            Assert.That(results.Count, Is.EqualTo(4));
        }
Пример #17
0
        static bool CheckDBInit(string connectionString)
        {
            SqlClientFactory newFactory = SqlClientFactory.Instance;

            SqlConnection sqlConnection = new SqlConnection(connectionString);

            sqlConnection.Open();
            DbCommand cmd = newFactory.CreateCommand();

            //MSSQL, Pstrgre и MySQL
            cmd.CommandText = "select case when exists((select* from information_schema.tables where table_name = 'OrleansQuery')) then 1 else 0 end";
            cmd.Connection  = sqlConnection;
            var res = (int)cmd.ExecuteScalar();

            return(res == 1);
        }
Пример #18
0
        public void Execute_ProjectionOfObjects_DataSetFilled()
        {
            SqlClient           session          = new SqlClientFactory().Instantiate(ConnectionStringReader.GetLocaleSql()) as SqlClient;
            var                 statement        = Mock.Of <IQuery>(x => x.Statement == "SELECT p.firstName[0]._value as FirstName, p.age[0]._value as Age FROM ROOT p WHERE p.label = 'person'");
            SqlCommandOperation commandOperation = new SqlCommandFactory().Instantiate(session, statement).Implementation as SqlCommandOperation;

            var engine = new SqlExecutionEngine(session.CreateClientOperation(), commandOperation);

            var ds = engine.Execute();

            Assert.That(ds.Tables, Has.Count.EqualTo(1));
            Assert.That(ds.Tables[0].Rows, Has.Count.EqualTo(4));

            Assert.That(ds.Tables[0].Columns, Has.Count.EqualTo(2));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("FirstName"));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("Age"));

            var firstNames = new List <object>();
            var ages       = new List <object>();

            foreach (DataRow row in ds.Tables[0].Rows)
            {
                for (int i = 0; i < ds.Tables[0].Columns.Count; i++)
                {
                    if (row.Table.Columns[i].ColumnName == "FirstName")
                    {
                        firstNames.Add(row.ItemArray[i]);
                    }
                    else if (row.Table.Columns[i].ColumnName == "Age")
                    {
                        ages.Add(row.ItemArray[i]);
                    }
                }
            }

            foreach (var expectedFirstName in new[] { "Thomas", "Mary", "Ben", "Robin" })
            {
                Assert.That(firstNames, Has.Member(expectedFirstName));
            }

            foreach (var expectedAge in new object[] { 44, 39 })
            {
                Assert.That(ages, Has.Member(expectedAge));
            }
        }
Пример #19
0
        public void Execute_Vertex_DataSetFilled()
        {
            SqlClient           client           = new SqlClientFactory().Instantiate(ConnectionStringReader.GetLocaleSql()) as SqlClient;
            var                 statement        = Mock.Of <IQuery>(x => x.Statement == "SELECT * FROM FoF f WHERE f.label='person'");
            SqlCommandOperation commandOperation = new SqlCommandFactory().Instantiate(client, statement).Implementation as SqlCommandOperation;

            var engine = new SqlExecutionEngine(client.CreateClientOperation(), commandOperation);

            var ds = engine.Execute();

            Assert.That(ds.Tables, Has.Count.EqualTo(1));
            Assert.That(ds.Tables[0].Rows, Has.Count.EqualTo(4));

            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("id"));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("label"));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("firstName"));
            Assert.That(ds.Tables[0].Columns.Cast <DataColumn>().Select(x => x.ColumnName), Has.Member("age"));
        }
Пример #20
0
        static bool InitDB(string connectionString)
        {
            SqlClientFactory newFactory = SqlClientFactory.Instance;

            SqlConnection sqlConnection = new SqlConnection(connectionString);

            sqlConnection.Open();
            if (!Directory.Exists("OrleansAdoNetContent\\SQLServer"))
            {
                return(false);
            }
            ;
            //xxx-Main should be the first :)
            foreach (var scriptFile in Directory.GetFiles("OrleansAdoNetContent\\SQLServer", "*.sql").OrderByDescending(c => c.Contains("Main")))
            {
                DbCommand cmd = newFactory.CreateCommand();
                cmd.CommandText = File.ReadAllText(scriptFile);
                cmd.Connection  = sqlConnection;
                cmd.ExecuteNonQuery();
            }
            sqlConnection.Close();

            return(true);
        }
Пример #21
0
 public UserInfraDAPPER()
 {
     factory = new SqlClientFactory();
 }
Пример #22
0
 public ConnectionFactory(IConfiguration config)
 {
     connectionString = config[ConnectionName];
     provider         = SqlClientFactory.Instance;
 }
Пример #23
0
        public void CanHandle_OleDbConnectionString_False()
        {
            var factory = new SqlClientFactory();

            Assert.That(factory.CanHandle("data source=SERVER;initial catalog=DB;IntegratedSecurity=true;Provider=OLEDB.1"), Is.False);
        }
Пример #24
0
        public void CanHandle_CosmosDbSql_True()
        {
            var factory = new SqlClientFactory();

            Assert.That(factory.CanHandle("Endpoint=https://xyz.graphs.azure.com:443;AuthKey=@uthk3y;database=db;collection=FoF;api=sql"), Is.True);
        }
Пример #25
0
 static SqlClientFactory()
 {
     Instance = new SqlClientFactory();
 }
Пример #26
0
 public DataAccess(SqlClientFactory sQLClientFactory, ApplicationSettings applicationSettings)
 {
     Connection = sQLClientFactory.CreateConnection();
     Connection.ConnectionString = applicationSettings.ConnectionString;
 }
Пример #27
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MssqlFactory"/> class.
 /// </summary>
 protected MssqlFactory()
 {
     sqlClientFactory = SqlClientFactory.Instance;
 }