Catch<TException> 클래스

정의

활동의 해당 Try 블록 Finally 에서 예외가 발생한 후 실행할 작업을 포함합니다.

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

형식 매개 변수

TException

블록이 Catch<TException> 처리하는 예외의 형식입니다.

상속
Catch<TException>
특성

예제

다음 코드 샘플에서는 활동을 만드는 방법을 Catch<TException> 보여 줍니다. 이 예제는 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
};

설명

디자이너에 배치된 후에는 Catch 디자이너에서 활동을 다시 정렬할 수 없습니다. 활동 컬렉션을 Catch 다시 정렬하려면 올바른 순서로 삭제하고 다시 추가하거나 워크플로에 xaml(코드) 보기를 사용합니다.

생성자

Name Description
Catch<TException>()

클래스의 새 인스턴스를 Catch<TException> 만듭니다.

속성

Name Description
Action

catch되는 예외에 대한 처리기입니다.

ExceptionType

블록이 Catch 처리하는 예외의 형식입니다.

메서드

Name Description
Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

적용 대상