Sdílet prostřednictvím


Catch<TException> Třída

Definice

Obsahuje akce, které se mají provést po vyvolání výjimky v odpovídajícím bloku Finally Try aktivity.

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

Parametry typu

TException

Typ výjimky, kterou Catch<TException> blok zpracovává.

Dědičnost
Catch<TException>
Atributy

Příklady

Následující ukázka kódu ukazuje vytvoření Catch<TException> aktivity. Tento příklad je z ukázky Zpracování chyb v aktivitě vývojového diagramu pomocí příkazu 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
};

Poznámky

Po umístění do návrháře Catch nelze změnit pořadí aktivit v návrháři. Pokud chcete změnit pořadí kolekcí Catch aktivit, odstraňte je a znovu přidejte ve správném pořadí nebo použijte zobrazení XAML (kód) pro pracovní postup.

Konstruktory

Catch<TException>()

Vytvoří novou instanci třídy Catch<TException>.

Vlastnosti

Action

Obslužná rutina zachycené výjimky.

ExceptionType

Typ výjimky, kterou Catch blok zpracovává.

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro