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

Queryable.All<TSource> 메서드 (IQueryable<TSource>, Expression<Func<TSource, Boolean>>)

 

게시 날짜: 2016년 11월

시퀀스의 모든 요소 조건을 만족 하는지 여부를 결정 합니다.

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

public static bool All<TSource>(
	this IQueryable<TSource> source,
	Expression<Func<TSource, bool>> predicate
)

매개 변수

source
Type: System.Linq.IQueryable<TSource>

요소를 조건에 대해 테스트를 할 시퀀스입니다.

predicate
Type: System.Linq.Expressions.Expression<Func<TSource, Boolean>>

각 요소를 조건에 대해 테스트하는 함수입니다.

반환 값

Type: System.Boolean

true 소스 시퀀스의 모든 요소가 지정된 된 조건자의 테스트를 통과 하거나 시퀀스가 비어 있는 경우 그렇지 않으면 false합니다.

형식 매개 변수

TSource

요소 형식의 source합니다.

Exception Condition
ArgumentNullException

source 또는 predicatenull인 경우

이 메서드는 형식의 매개 변수가 하나 이상 Expression<TDelegate> 해당 형식 인수가 중 하나는 Func<T, TResult> 형식입니다. 이러한 매개 변수에 대해 람다 식을 전달할 수 있으며으로 컴파일됩니다는 Expression<TDelegate>합니다.

All<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>) 메서드를 생성 한 MethodCallExpression 호출을 나타내는 All<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>) 로 생성된 된 제네릭 메서드 자체입니다. 다음 전달는 MethodCallExpressionExecute<TResult>(Expression) 메서드는 IQueryProvider 나타내는 Provider 속성은 source 매개 변수입니다.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 All<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>) 의 구현에 따라는 source 매개 변수의 형식입니다. 예상 되는 동작은 모든 확인 하는 것에 있는 요소 source 조건에 맞는 predicate합니다.

다음 코드 예제에 사용 하는 방법을 보여 줍니다 All<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>) 를 시퀀스의 모든 요소가 조건을 만족 하는지 여부를 확인 합니다.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void AllEx1()
{
    // Create an array of Pets.
    Pet[] pets = { new Pet { Name="Barley", Age=10 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=6 } };

    // Determine whether all pet names in the array start with 'B'.
    bool allStartWithB =
        pets.AsQueryable().All(pet => pet.Name.StartsWith("B"));

    Console.WriteLine(
        "{0} pet names start with 'B'.",
        allStartWithB ? "All" : "Not all");
}

// This code produces the following output:
//
//  Not all pet names start with 'B'. 

되는 부울 값는 All<TSource>(IQueryable<TSource>, Expression<Func<TSource, Boolean>>) 메서드는 조건자에 일반적으로 사용 되는 where 절 (Where 절에 Visual Basic) 직접 호출이 나는 Where<TSource> 메서드. 다음 예제에서는 이러한를 사용이 하는 All 메서드.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}
class Person
{
    public string LastName { get; set; }
    public Pet[] Pets { get; set; }
}

public static void AllEx2()
{
    List<Person> people = new List<Person>
        { new Person { LastName = "Haas",
                       Pets = new Pet[] { new Pet { Name="Barley", Age=10 },
                                          new Pet { Name="Boots", Age=14 },
                                          new Pet { Name="Whiskers", Age=6 }}},
          new Person { LastName = "Fakhouri",
                       Pets = new Pet[] { new Pet { Name = "Snowball", Age = 1}}},
          new Person { LastName = "Antebi",
                       Pets = new Pet[] { new Pet { Name = "Belle", Age = 8} }},
          new Person { LastName = "Philips",
                       Pets = new Pet[] { new Pet { Name = "Sweetie", Age = 2},
                                          new Pet { Name = "Rover", Age = 13}} }
        };

    // Determine which people have pets that are all older than 5.
    IEnumerable<string> names = from person in people
                                where person.Pets.AsQueryable().All(pet => pet.Age > 5)
                                select person.LastName;

    foreach (string name in names)
        Console.WriteLine(name);

    /* This code produces the following output:
     * 
     * Haas
     * Antebi
     */
}

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