Catch<TException> Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Contém as ações a serem executadas após uma exceção ser levantada no bloco Try correspondente de uma Finally atividade.
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
Parâmetros de Tipo Genérico
- TException
O tipo de exceção que o Catch<TException> bloco está a tratar.
- Herança
- Atributos
Exemplos
O exemplo de código seguinte demonstra como criar uma Catch<TException> atividade. Este exemplo é da Atividade de Manuseamento de Falhas numa Atividade de Fluxograma Usando a amostra 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
};
Observações
Uma vez colocadas no designer, Catch as atividades não podem ser reordenadas no designer. Para reordenar a coleção de Catch atividades, elimine-as e volte a adicioná-las na ordem correta, ou use a vista xaml (código) para o fluxo de trabalho.
Construtores
| Name | Description |
|---|---|
| Catch<TException>() |
Cria uma nova instância da Catch<TException> classe. |
Propriedades
| Name | Description |
|---|---|
| Action |
O responsável pela exceção foi apanhado. |
| ExceptionType |
O tipo de exceção que o Catch bloco está a tratar. |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |