Catch<TException> Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Bevat de acties die moeten worden uitgevoerd nadat een uitzondering is gegenereerd in het bijbehorende try-blok van een Finally activiteit.
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
Type parameters
- TException
Het type uitzondering dat het Catch<TException> blok verwerkt.
- Overname
- Kenmerken
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u een Catch<TException> activiteit maakt. Dit voorbeeld is afkomstig uit de foutafhandeling in een stroomdiagramactiviteit met behulp van trycatch-voorbeeld .
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
};
Opmerkingen
Zodra deze in de ontwerper is geplaatst, Catch kunnen activiteiten niet opnieuw worden gerangschikt in de ontwerper. Als u de verzameling activiteiten opnieuw wilt ordenen Catch , verwijdert en voegt u ze opnieuw toe in de juiste volgorde, of gebruikt u de xaml-weergave (code) voor de werkstroom.
Constructors
| Name | Description |
|---|---|
| Catch<TException>() |
Hiermee maakt u een nieuw exemplaar van de Catch<TException> klasse. |
Eigenschappen
| Name | Description |
|---|---|
| Action |
De handler voor de uitzondering die wordt gevangen. |
| ExceptionType |
Het type uitzondering dat het Catch blok verwerkt. |
Methoden
| Name | Description |
|---|---|
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |