Cast(TResult) 메서드
이 문서는 수동으로 번역한 것입니다. 원본 텍스트를 보려면 포인터를 문서의 문장 위로 올리십시오.
번역
원본

Enumerable.Cast<TResult> 메서드

IEnumerable 의 요소를 지정된 형식으로 변환합니다.

네임스페이스:  System.Linq
어셈블리:  System.Core(System.Core.dll)

public static IEnumerable<TResult> Cast<TResult>(
	this IEnumerable source
)

형식 매개 변수

TResult

source의 요소를 변환할 형식입니다.

매개 변수

source
형식: System.Collections.IEnumerable
변환할 요소가 들어 있는 IEnumerable입니다.

반환 값

형식: System.Collections.Generic.IEnumerable<TResult>
지정된 형식으로 변환된 소스 시퀀스의 각 요소가 들어 있는 IEnumerable<T>입니다.

사용 정보

Visual Basic 및 C#에서는 이 메서드를 IEnumerable 형식의 모든 개체에서 인스턴스 메서드로 호출할 수 있습니다. 인스턴스 메서드 구문을 사용하여 이 메서드를 호출할 경우에는 첫 번째 매개 변수를 생략합니다.

예외상황
ArgumentNullException

sourcenull인 경우

InvalidCastException

시퀀스의 요소를 TResult 형식으로 캐스팅할 수 없는 경우

이 메서드는 지연된 실행을 사용하여 구현됩니다. 해당 작업을 수행하는 데 필요한 모든 정보가 저장된 개체가 즉시 반환됩니다. 이 메서드에서 나타내는 쿼리는 해당 GetEnumerator 메서드를 직접 호출하거나, foreach(Visual C#의 경우) 또는 For Each(Visual Basic의 경우)를 사용하여 개체를 열거할 때까지 실행되지 않습니다.

Cast<TResult>(IEnumerable) 메서드를 사용하면 필수 형식 정보를 제공하여 제네릭이 아닌 컬렉션에 대해 표준 쿼리 연산자를 호출할 수 있습니다. 예를 들어 ArrayListIEnumerable<T>을 구현하지 않지만 ArrayList 개체에 대해 Cast<TResult>(IEnumerable)를 호출하면 표준 쿼리 연산자를 사용하여 시퀀스를 쿼리할 수 있습니다.

요소를 TResult 형식으로 캐스팅할 수 없으면 이 메서드는 예외를 throw합니다. TResult 형식으로 캐스팅할 수 있는 요소만 가져오려면 Cast<TResult>(IEnumerable) 대신 OfType<TResult> 메서드를 사용합니다.

쿼리 식에서 명시적으로 형식화된 반복 변수는 Cast<TResult>(IEnumerable) 호출로 변환됩니다. 다음 예제에서는 명시적으로 형식화된 범위 변수 구문을 보여 줍니다.

from int i in objects

다음 코드 예제에서는 Cast<TResult>(IEnumerable)를 사용하여 ArrayList에 대해 표준 쿼리 연산자를 사용하는 방법을 보여 줍니다.


      List<string> fruits = new List<string>();
      fruits.Add("apple");
      fruits.Add("mango");

      IEnumerable<string> query =
          fruits.Cast<string>().Select(fruit => fruit);

      foreach (string fruit in query)
      {
         outputBlock.Text += fruit + "\n";
      }

      // This code produces the following output:
      //
      // apple
      // mango



Silverlight

5, 4, 3에서 지원

Windows Phone용 Silverlight

Windows Phone OS 7.1, Windows Phone OS 7.0에서 지원

XNA Framework

Xbox 360, Windows Phone OS 7.0에서 지원

Silverlight에서 지원되는 운영 체제 및 브라우저에 대한 자세한 내용은 지원되는 운영 체제 및 브라우저을 참조하십시오.

커뮤니티 추가 항목

추가
표시:
© 2016 Microsoft