当前位置: 首页>>代码示例>>C#>>正文


C# DataConnection.BeginTransaction方法代码示例

本文整理汇总了C#中LinqToDB.Data.DataConnection.BeginTransaction方法的典型用法代码示例。如果您正苦于以下问题:C# DataConnection.BeginTransaction方法的具体用法?C# DataConnection.BeginTransaction怎么用?C# DataConnection.BeginTransaction使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在LinqToDB.Data.DataConnection的用法示例。


在下文中一共展示了DataConnection.BeginTransaction方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: TestTransaction2

        public void TestTransaction2(string context)
        {
            using (var db = new DataConnection(context))
            {
                db.GetTable<Parent>().Update(p => p.ParentID == 1, p => new Parent { Value1 = 1 });

                using (var tran = db.BeginTransaction())
                {
                    db.GetTable<Parent>().Update(p => p.ParentID == 1, p => new Parent { Value1 = null });

                    Assert.IsNull(db.GetTable<Parent>().First(p => p.ParentID == 1).Value1);

                    tran.Rollback();

                    Assert.That(1, Is.EqualTo(db.GetTable<Parent>().First(p => p.ParentID == 1).Value1));
                }
            }
        }
开发者ID:jack128,项目名称:linq2db,代码行数:18,代码来源:MySqlTest.cs

示例2: BulkCopyTest

        void BulkCopyTest(string context, BulkCopyType bulkCopyType)
        {
            using (var conn = new DataConnection(context))
            {
                conn.BeginTransaction();

                conn.BulkCopy(new BulkCopyOptions { MaxBatchSize = 50000, BulkCopyType = bulkCopyType },
                    Enumerable.Range(0, 100000).Select(n =>
                        new AllType
                        {
                            ID                  = 2000 + n,
                            bigintDataType      = 3000 + n,
                            smallintDataType    = (short)(4000 + n),
                            tinyintDataType     = (sbyte)(5000 + n),
                            mediumintDataType   = 6000 + n,
                            intDataType         = 7000 + n,
                            numericDataType     = 8000 + n,
                            decimalDataType     = 9000 + n,
                            doubleDataType      = 8800 + n,
                            floatDataType       = 7700 + n,
                            dateDataType        = DateTime.Now,
                            datetimeDataType    = DateTime.Now,
                            timestampDataType   = null,
                            timeDataType        = null,
                            yearDataType        = (1000 + n) % 100,
                            year2DataType       = (1000 + n) % 100,
                            year4DataType       = null,
                            charDataType        = 'A',
                            varcharDataType     = "",
                            textDataType        = "",
                            binaryDataType      = null,
                            varbinaryDataType   = null,
                            blobDataType        = new byte[] { 1, 2, 3 },
                            bitDataType         = null,
                            enumDataType        = "Green",
                            setDataType         = "one",
                            intUnsignedDataType = (uint)(5000 + n),
                        }));

                //var list = conn.GetTable<ALLTYPE>().ToList();

                conn.GetTable<DB2Test.ALLTYPE>().Delete(p => p.SMALLINTDATATYPE >= 5000);
            }
        }
开发者ID:jack128,项目名称:linq2db,代码行数:44,代码来源:MySqlTest.cs

示例3: BulkCopyTest

        void BulkCopyTest(string context, BulkCopyType bulkCopyType)
        {
            using (var conn = new DataConnection(context))
            {
                conn.BeginTransaction();

                conn.BulkCopy(new BulkCopyOptions { MaxBatchSize = 50, BulkCopyType = bulkCopyType },
                    Enumerable.Range(0, 100).Select(n =>
                        new AllType
                        {
                            ID = 2000 + n,
                            bigintDataType = 3000 + n,
                            smallintDataType = (short)(4000 + n),
                            decimalDataType = 900000 + n,
                            smalldecimalDataType = 90000 + n,
                            intDataType = 7000 + n,
                            tinyintDataType = (byte)(5000 + n),
                            floatDataType = 7700 + n,
                            realDataType = 7600 + n,

                            dateDataType = DateTime.Now,
                            timeDataType = DateTime.Now - DateTime.Today,
                            seconddateDataType = DateTime.Now,
                            timestampDataType = DateTime.Now,

                            charDataType = 'A',
                            varcharDataType = "AA",
                            textDataType = "text",
                            shorttextDataType = "shorttext",
                            ncharDataType = '\u00fc',
                            nvarcharDataType = "A\u00fcfsdf\u00fc",
                            alphanumDataType = "abcQWE654",
                            binaryDataType = new byte[] { 1 },
                            varbinaryDataType = new byte[] { 1, 2, 3 },
                            blobDataType = new byte[] { 1, 2, 3, 4, 5, 6 },
                            clobDataType = "clobclobclob",
                            nclobDataType = "nclob\u00fcnclob\u00fcnclob\u00fc"
                        }));

                conn.GetTable<AllType>().Delete(p => p.ID >= 2000);
            }
        }
开发者ID:Convey-Compliance,项目名称:linq2db,代码行数:42,代码来源:SapHanaTests.cs


注:本文中的LinqToDB.Data.DataConnection.BeginTransaction方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。