예제 #1
0
        public void TestBulkCopyWithInterface()
        {
            const int ItemCount = 10;

            // build test data
            InsightTestData[] array = new InsightTestData[ItemCount];
            for (int j = 0; j < ItemCount; j++)
            {
                array[j] = new InsightTestData()
                {
                    Int = j
                }
            }
            ;

            var profiled = new GlimpseDbConnection((DbConnection)Connection());

            using (var i = profiled.OpenWithTransactionAs <ICanBulkCopy>())
            {
                i.BulkCopy("BulkCopyData", array);
            }
        }

        #endregion
    }
예제 #2
0
        public void TestProfiledSqlQuery()
        {
            var profiled = new GlimpseDbConnection((DbConnection)Connection());
            var result   = profiled.QuerySql <int>("SELECT @p --GLIMPSE", new { p = 1 }).First();

            Assert.AreEqual((int)1, result);
        }
예제 #3
0
        public void TestProfiledStoredProcWithParameters()
        {
            using (var connection = ConnectionWithTransaction())
            {
                connection.ExecuteSql("CREATE PROC InsightTestProcGlimpse (@Value int = 5) AS SELECT Value=@Value");

                var profiled = new GlimpseDbConnection((DbConnection)connection);
                var result   = profiled.Query <int>("InsightTestProcGlimpse", new { Value = 1 }).First();

                Assert.AreEqual((int)1, result);
            }
        }
예제 #4
0
        public IDbConnection CreateConnection()
        {
            var innerConnection = _innerDriver.CreateConnection();

            if (innerConnection is GlimpseDbConnection)
            {
                return(innerConnection);
            }

            var connection = new GlimpseDbConnection(innerConnection as DbConnection);

            return(connection);
        }
        /// <summary>
        /// Unwraps the given connection and returns the inner connection.
        /// </summary>
        /// <param name="connection">The outer connection.</param>
        /// <returns>The inner connection.</returns>
        public override IDbConnection GetInnerConnection(IDbConnection connection)
        {
            GlimpseDbConnection profiledConnection = (GlimpseDbConnection)connection;

            return(profiledConnection.InnerConnection);
        }