Aracılığıyla paylaş


Catch<TException> Sınıf

Tanım

Bir etkinliğin ilgili Try bloğunda Finally özel durum oluştuktan sonra yürütülecek eylemleri içerir.

generic <typename TException>
 where TException : Exceptionpublic ref class Catch sealed : System::Activities::Statements::Catch
[System.Windows.Markup.ContentProperty("Action")]
public sealed class Catch<TException> : System.Activities.Statements.Catch where TException : Exception
[<System.Windows.Markup.ContentProperty("Action")>]
type Catch<'Exception (requires 'Exception :> Exception)> = class
    inherit Catch
Public NotInheritable Class Catch(Of TException)
Inherits Catch

Tür Parametreleri

TException

Bloğun işlemekte Catch<TException> olduğu özel durum türü.

Devralma
Catch<TException>
Öznitelikler

Örnekler

Aşağıdaki kod örneği etkinlik Catch<TException> oluşturmayı gösterir. Bu örnek, TryCatch Kullanarak Akış Çizelgesi Etkinliğindeki Hata İşleme örneğinden alınıyor.

FlowStep mwkStep = new FlowStep
{
    Action = new TryCatch
    {
        DisplayName = "Try/Catch for Divide By Zero Exception",
        Try = new Assign
        {
            DisplayName = "discount = 15 + (1 - 1/numberOfKids)*10",
            To = new OutArgument<double>(discount),
            Value = new InArgument<double>((ctx) => (15 + (1 - 1 / numberOfKids.Get(ctx)) * 10))
        },
        Catches =
        {
             new Catch<System.DivideByZeroException>
             {
                 Action = new ActivityAction<System.DivideByZeroException>
                 {
                     Argument = ex,
                     DisplayName = "ActivityAction - DivideByZeroException",
                     Handler =
                         new Sequence
                         {
                             DisplayName = "Divide by Zero Exception Workflow",
                             Activities =
                             {
                                new WriteLine()
                                {
                                    DisplayName = "WriteLine: DivideByZeroException",
                                    Text = "DivideByZeroException: Promo code is MWK - but number of kids = 0"
                                },
                                new Assign<double>
                                {
                                    DisplayName = "Exception - discount = 0",
                                    To = discount,
                                    Value = new InArgument<double>(0)
                                }
                             }
                         }
                 }
             }
        }
    },
    Next = flowDecision
};

Açıklamalar

Tasarımcıya yerleştirildikten sonra, Catch etkinlikler tasarımcıda yeniden sıralanamaz. Etkinlik koleksiyonunu Catch yeniden sıralamak için bunları doğru sırada silin ve yeniden ekleyin veya iş akışı için xaml (kod) görünümünü kullanın.

Oluşturucular

Catch<TException>()

Catch<TException> sınıfının yeni bir örneğini oluşturur.

Özellikler

Action

Yakalanan özel durumun işleyicisi.

ExceptionType

Bloğun işlemekte Catch olduğu özel durum türü.

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır