System.Transactions.ContextData.LookupContextData C# (CSharp) Метод

LookupContextData() статический приватный Метод

static private LookupContextData ( TxLookup defaultLookup ) : ContextData
defaultLookup TxLookup
Результат ContextData
        internal static ContextData LookupContextData(TxLookup defaultLookup)
        {
            ContextData currentData = null;
            if (CallContextCurrentData.TryGetCurrentData(out currentData))
            {
                if (currentData.CurrentScope == null && currentData.CurrentTransaction == null && defaultLookup != TxLookup.DefaultCallContext)
                {
                    // Clear Call Context Data
                    CallContextCurrentData.ClearCurrentData(null, true);
                    return TLSCurrentData;
                }

                return currentData;
            }
            else
            {
                return TLSCurrentData;
            }
        }
    }

Usage Example

Пример #1
0
        // GetCurrentTransactionAndScope
        //
        // Returns both the current transaction and scope.  This is implemented for optimizations
        // in TransactionScope because it is required to get both of them in several cases.
        internal static void GetCurrentTransactionAndScope(
            TxLookup defaultLookup,
            out Transaction?current,
            out TransactionScope?currentScope,
            out Transaction?contextTransaction)
        {
            current            = null;
            currentScope       = null;
            contextTransaction = null;

            ContextData contextData = ContextData.LookupContextData(defaultLookup);

            if (contextData != null)
            {
                currentScope = contextData.CurrentScope;
                current      = FastGetTransaction(currentScope, contextData, out contextTransaction);
            }
        }