program.cs

来自「C#高级编程第6版随书源代码 值得下载」· CS 代码 · 共 58 行

CS
58
字号
using System;
using System.Collections.Generic;
using System.Text;
using System.Transactions;
using System.Threading;

namespace Wrox.ProCSharp.Transactions
{
    class Program
    {
        static void Main()
        {
            TransactionOptions options = new TransactionOptions();
            options.IsolationLevel = IsolationLevel.ReadUncommitted;
            options.Timeout = TimeSpan.FromSeconds(90);
            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, 
                options))
            {
                Transaction.Current.TransactionCompleted += OnTransactionCompleted;

                Utilities.DisplayTransactionInformation(
                    "Ambient TX created",
                    Transaction.Current.TransactionInformation);

                //Student s1 = new Student();
                //s1.Firstname = "Ingo";
                //s1.Lastname = "Rammer";
                //s1.Company = "thinktecture";
                //StudentData db = new StudentData();
                //db.AddStudent(s1);

                using (TransactionScope scope2 = new TransactionScope(TransactionScopeOption.RequiresNew))
                {
                    Transaction.Current.TransactionCompleted += OnTransactionCompleted;

                    Utilities.DisplayTransactionInformation(
                        "Inner Transaction Scope",
                        Transaction.Current.TransactionInformation);

                    scope2.Complete();
                }
                scope.Complete();

                //if (!Utilities.AbortTx())
                //    scope.Complete();
                //else
                //    Console.WriteLine("abort transaction");
            }
        }

        static void OnTransactionCompleted(object sender, TransactionEventArgs e)
        {
           Utilities.DisplayTransactionInformation("transaction completed",
              e.Transaction.TransactionInformation);
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?