다음을 통해 공유


LinqDataSource.Select 속성

정의

검색된 데이터에 포함되는 속성 및 계산된 값을 가져오거나 설정합니다.

public:
 property System::String ^ Select { System::String ^ get(); void set(System::String ^ value); };
public string Select { get; set; }
member this.Select : string with get, set
Public Property Select As String

속성 값

Select 절을 만드는 데 사용되는 문자열입니다.

예제

다음 예제에서는 설정 하는 방법을 보여 줍니다.는 Select 속성의 하위 집합으로 속성을 데이터 개체입니다.

<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    Select="new(Name, Category, Price)"
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    Select="new(Name, Category, Price)"
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:GridView 
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>

다음 예제에서는 데이터를 그룹화하고 그룹화된 레코드의 평균을 검색하는 데 사용된 속성의 값을 검색하는 방법을 보여줍니다. 키워드에는 Key 데이터 그룹화에 사용된 속성이 포함되어 있습니다. 이 예제에서 는 Key 속성의 공유 값을 ProductCategory 포함합니다.

<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    GroupBy="Category"
    Select="new(Key as ProductCategory, 
            Average(Price) as AvePrice)"
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:GridView 
    AllowPaging="true"
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>
<asp:LinqDataSource 
    ContextTypeName="ExampleDataContext" 
    TableName="Products" 
    GroupBy="Category"
    Select="new(Key as ProductCategory, 
            Average(Price) as AvePrice)"
    ID="LinqDataSource1" 
    runat="server">
</asp:LinqDataSource>
<asp:GridView 
    AllowPaging="true"
    DataSourceID="LinqDataSource1"
    ID="GridView1" 
    runat="server">
</asp:GridView>

설명

속성을 설정 Select 하지 않으면 컨트롤은 LinqDataSource 데이터 개체에서 모든 속성(데이터 열)을 검색합니다. 사용 하 여는 Select 속성을 개체에서 속성의 하위 집합을 검색 하거나 데이터를 검색할 때 새 값을 계산 합니다.

반환된 데이터에 포함할 속성의 이름으로 속성을 설정 Select 하여 검색할 속성을 지정합니다.

데이터 개체에서 속성의 하위 집합을 검색하는 경우 컨트롤은 LinqDataSource 속성에 지정한 속성만 포함하는 클래스를 Select 동적으로 만듭니다. 데이터 개체의 속성이 아닌 속성을 계산하는 경우에도 클래스가 동적으로 만들어집니다. 이러한 경우 쿼리에서 반환된 개체는 속성에 지정된 TableName 클래스의 인스턴스가 아닙니다. 대신 메서드를 newSelect 사용 해야 합니다는 새 클래스가 쿼리에서 반환 되었음을 나타내는 속성입니다. 예를 들어 이러한 속성보다 많은 속성이 포함된 개체에서 및 속성만 FirstName 반환하려면 속성을 new(FirstName, LastName)로 설정합니다Select.LastName 컨트롤은 LinqDataSource 메서드에 new 지정한 새 클래스를 동적으로 만듭니다.

키워드를 As 사용하여 선택한 값에 별칭을 할당할 수 있습니다. 별칭을 할당하는 경우 메서드에 별칭이 지정된 속성을 new 포함해야 합니다. 컨트롤의 결과에 바인딩되는 데이터 바인딩된 컨트롤은 LinqDataSource 별칭으로 속성을 참조해야 합니다. 예를 들어 속성을 new(Region As SalesRegion, Revenue / 1000 As RevenueThousands)Select 설정하면 데이터 바인딩된 컨트롤이 및 RevenueThousands의 두 속성 SalesRegion 에 액세스할 수 있습니다.

다음 표에 newSelect 나열된 조건에 따라 속성에서 함수를 사용합니다.

선택 새 사용
단일 속성입니다. new 필요하지 않습니다. Select="Category"
여러 속성. new 필요한. Select="new(Category, Name)"
별칭이 있는 단일 또는 여러 속성입니다. new 필요한. Select="new(Category As CategoryGroup)"

자동 데이터 수정을 사용하도록 설정하려고 하지만 데이터 개체의 모든 속성을 표시하지 않으려면 속성을 설정 Select 하지 마세요. 대신 데이터 바인딩된 컨트롤을 통해 디스플레이를 관리합니다. 컨트롤 또는 컨트롤을 DetailsViewGridView 사용하는 경우 또는 AutoGenerateColumns 속성false도 로 AutoGenerateRows 설정해야 합니다. 데이터 바인딩된 컨트롤에 표시되지 않는 모든 값은 뷰 상태에 저장됩니다. 데이터 업데이트가 수행될 때 데이터 원본에 변경되지 않은 상태로 전달됩니다.

쿼리에서 데이터를 그룹화할 때 속성에 집계 메서드를 포함할 Select 수 있습니다. 다음 집계 메서드를 사용할 수 있습니다.

  • Count()

  • Average()

  • Sum()

  • Max()

  • Min()

  • Where(condition)

  • Any()

  • All(condition)

자세한 내용은 LinqDataSource 웹 서버 컨트롤 개요방법: LinqDataSource 컨트롤을 사용하여 데이터 그룹화 및 집계를 참조하세요.

데이터를 그룹화할 때 속성에 동적으로 생성된 속성인 및 It를 포함 KeySelect 수 있습니다. Key 합니다 속성의 값을 참조 합니다 속성 또는 데이터를 그룹화 하는 데 사용 된 속성입니다. 예를 들어 라는 Category속성으로 그룹화하면 속성에 속성의 Key 각 고유 값이 Category 포함됩니다. 속성은 It 데이터 그룹화의 개별 레코드 컬렉션을 참조합니다. 속성을 반복 It 하여 그룹화 작업에서 통합된 개별 레코드를 검색할 수 있습니다. 예를 들어 라는 Category속성으로 그룹화하면 속성에 It 공통 값을 공유하는 모든 개별 레코드가 Category 포함됩니다.

데이터를 그룹화할 때 속성에 키워드를 Select 포함하는 It 경우 키워드에 별칭을 It 할당해야 합니다. LinqDataSource 별칭이 없는 경우 It 컨트롤에서 예외를 throw합니다. 키워드에 별칭을 할당할 Key 수 있지만 필수는 아닙니다.

적용 대상