This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

Transaction.TransactionCompleted الحدث

Visual Studio 2010

يشير إلى أن العملية هو إكمال.

مساحة الاسم:  System.Transactions
التجميع:  System.Transactions (في System.Transactions.dll)

public event TransactionCompletedEventHandler TransactionCompleted

استثناء:شرط
ObjectDisposedException

محاولة إلى الاشتراك في هذا حدث تشغيل معاملة تم التخلص من.

يمكنك التسجيل لهذا حدث بدلاً من استخدام سرد متغير إلى الحصول على المعلومات نتيجة للمعاملات. معلمة التي تم تمريرها إلى TransactionCompletedEventHandlerتفويض هو Transactionالمثيل. ثم يمكنك الاستعلام TransactionInformationالخصائص للمثيل معينة إلى الحصول على مثيل TransactionInformation، له Statusتحتوي الخاصية على حالة معاملة مع أي Committedأو Abortedالقيمة.

تنبيهويؤثر تسجيل الاشتراك لهذا حدث بشكل سلبي على الأداء عملية بها إلى.

نموذج التالي يوضح كيفية تطبيق يمكن الحصول على نتيجة معاملة بالاشتراك إلى TransactionCompletedحدث.


		static void Main(string[] args)
		{
			try
			{
				//Create the transaction scope
				using (TransactionScope scope = new TransactionScope())
				{
					//Register for the transaction completed event for the current transaction
					Transaction.Current.TransactionCompleted += new TransactionCompletedEventHandler(Current_TransactionCompleted);

					//Call complete on the TransactionScope based on console input
					ConsoleKeyInfo c;
					while (true)
					{
						Console.Write("Complete the transaction scope? [Y|N] ");
						c = Console.ReadKey();
						Console.WriteLine();

						if ((c.KeyChar == 'Y') || (c.KeyChar == 'y'))
						{
							scope.Complete();
							break;
						}
						else if ((c.KeyChar == 'N') || (c.KeyChar == 'n'))
						{
							break;
						}
					}

				}

			}
			catch (System.Transactions.TransactionException ex)
			{
				Console.WriteLine(ex);
			}
			catch
			{
				Console.WriteLine("Cannot complete transaction");
				throw;
			}
		}

		//Transaction completed event handler
		static void Current_TransactionCompleted(object sender, TransactionEventArgs e)
		{
			Console.WriteLine("A transaction has completed:");
			Console.WriteLine("ID:             {0}", e.Transaction.TransactionInformation.LocalIdentifier);
			Console.WriteLine("Distributed ID: {0}", e.Transaction.TransactionInformation.DistributedIdentifier);
			Console.WriteLine("Status:         {0}", e.Transaction.TransactionInformation.Status);
			Console.WriteLine("IsolationLevel: {0}", e.Transaction.IsolationLevel);
		}


نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0

NET Framework. Client Profile

مدعوم في: 4
إظهار: