Catch<TException> Klasse

Definition

Enthält die Aktionen, die ausgeführt werden sollen, nachdem eine Ausnahme im entsprechenden Try-Block einer Finally Aktivität ausgelöst wurde.

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

Typparameter

TException

Der Typ der Ausnahme, die der Catch<TException> Block behandelt.

Vererbung
Catch<TException>
Attribute

Beispiele

Im folgenden Codebeispiel wird das Erstellen einer Catch<TException> Aktivität veranschaulicht. Dieses Beispiel stammt aus der Fehlerbehandlung in einem Flowchart-Aktivitätsbeispiel mit TryCatch .

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
};

Hinweise

Nach der Platzierung im Designer Catch können die Aktivitäten nicht mehr im Designer neu angeordnet werden. Wenn Sie die Sammlung von Catch Aktivitäten neu anordnen möchten, löschen Sie sie, und fügen Sie sie in der richtigen Reihenfolge erneut hinzu, oder verwenden Sie die XAML-Ansicht (Code) für den Workflow.

Konstruktoren

Name Beschreibung
Catch<TException>()

Erstellt eine neue Instanz der Catch<TException> Klasse.

Eigenschaften

Name Beschreibung
Action

Der Handler für die Ausnahme, die abgefangen wird.

ExceptionType

Der Typ der Ausnahme, die der Catch Block behandelt.

Methoden

Name Beschreibung
Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für: