이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

AsyncCompletedEventArgs.RaiseExceptionIfNecessary 메서드 ()

 

게시 날짜: 2016년 11월

비동기 작업에 실패 한 경우 사용자가 제공한 예외를 발생 시킵니다.

네임스페이스:   System.ComponentModel
어셈블리:  System(System.dll에 있음)

protected void RaiseExceptionIfNecessary()

Exception Condition
InvalidOperationException

Cancelled 속성은 true입니다.

TargetInvocationException

Error 비동기 작업을 통해 속성이 설정 되어 있습니다. InnerException 속성에 대 한 참조를 보유 Error합니다.

상속자 참고 사항:

고유한 클래스를 파생 시킨 경우는 AsyncCompletedEventArgs 읽기 전용 속성에서 호출 해야 클래스는 RaiseExceptionIfNecessary 속성 값을 반환 하기 전에 메서드. 구성 요소의 비동기 작업자 코드에 대 한 예외를 할당는 Error 속성 또는 설정에서 Cancelled 속성을 true, 클라이언트에서 해당 값을 읽을 하려고 속성 예외가 발생 합니다. 따라서 비동기 작업의 오류로 인해 유효 하지 않을 수 있는 속성에 액세스할 클라이언트 수 없습니다.

다음 코드 예제를 사용 하 여 보여 줍니다. RaiseExceptionIfNecessary 파생 된 클래스 속성입니다.

public class CalculatePrimeCompletedEventArgs :
    AsyncCompletedEventArgs
{
    private int numberToTestValue = 0;
    private int firstDivisorValue = 1;
    private bool isPrimeValue;

    public CalculatePrimeCompletedEventArgs(
        int numberToTest,
        int firstDivisor,
        bool isPrime,
        Exception e,
        bool canceled,
        object state) : base(e, canceled, state)
    {
        this.numberToTestValue = numberToTest;
        this.firstDivisorValue = firstDivisor;
        this.isPrimeValue = isPrime;
    }

    public int NumberToTest
    {
        get
        {
            // Raise an exception if the operation failed or 
            // was canceled.
            RaiseExceptionIfNecessary();

            // If the operation was successful, return the 
            // property value.
            return numberToTestValue;
        }
    }

    public int FirstDivisor
    {
        get
        {
            // Raise an exception if the operation failed or 
            // was canceled.
            RaiseExceptionIfNecessary();

            // If the operation was successful, return the 
            // property value.
            return firstDivisorValue;
        }
    }

    public bool IsPrime
    {
        get
        {
            // Raise an exception if the operation failed or 
            // was canceled.
            RaiseExceptionIfNecessary();

            // If the operation was successful, return the 
            // property value.
            return isPrimeValue;
        }
    }
}

유니버설 Windows 플랫폼
8 이후 사용 가능
.NET Framework
2.0 이후 사용 가능
이식 가능한 클래스 라이브러리
이식 가능한 .NET 플랫폼 에서 지원됨
Silverlight
2.0 이후 사용 가능
Windows Phone Silverlight
7.0 이후 사용 가능
Windows Phone
8.1 이후 사용 가능
맨 위로 이동
표시: