LinqDataSource.Select LinqDataSource.Select LinqDataSource.Select LinqDataSource.Select Property

Определение

Возвращает или задает свойства и рассчитанные значение, которые включаются в извлеченные данные.Gets or sets the properties and calculated values that are included in the retrieved data.

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".A string that is used to create the Select clause.

Примеры

В следующем примере показано, как задать Select для свойства подмножество свойств в объекте данных.The following example shows how to set the Select property to a subset of properties in the data object.

<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>

В следующем примере показано, как получить значения в свойстве, которое было использовано для группирования данных, и получить среднее для сгруппированных записей.The following example shows how to retrieve values in a property that has been used to group data, and to retrieve the average for the grouped records. Key Ключевое слово содержит свойство, которое было использовано для группирования данных.The Key keyword contains the property that has been used for grouping data. В этом примере Key будет содержать общие значения ProductCategory из свойства.In this example, Key will contain the shared values from the ProductCategory property.

<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 , элемент управления извлекает все свойства (столбцы данных) из объекта данных.If you do not set the Select property, the LinqDataSource control retrieves all the properties (data columns) from the data object. Select Свойство используется для получения подмножества свойств объекта или для вычисления новых значений при извлечении данных.You use the Select property to retrieve a subset of properties from the object or to calculate new values when the data is being retrieved.

Вы указываете, какие свойства следует извлечь, Select присвоив свойству имена свойств, которые необходимо включить в возвращаемые данные.You specify which properties to retrieve by setting the Select property to the names of the properties that you want to include in the returned data.

При извлечении подмножества свойств из объекта LinqDataSource данных элемент управления динамически создает класс, который содержит только свойства, указанные Select в свойстве.If you retrieve a subset of properties from the data object, the LinqDataSource control dynamically creates a class that contains only the properties that you specify in the Select property. Кроме того, класс создается динамически при вычислении свойств, которые не являются свойствами в объекте данных.A class is also created dynamically if you calculate properties that are not properties in the data object. В таких случаях объект, возвращаемый из запроса, не является экземпляром класса, указанного в TableName свойстве.In these cases, the object returned from the query is not an instance of the class that is specified in the TableName property. Вместо этого необходимо использовать new метод Select в свойстве, чтобы указать, что из запроса возвращается новый класс.Instead, you must use the new method in the Select property to indicate that a new class is returned from the query. Например, FirstName чтобы вернуть только свойства и LastName из объекта, который содержит больше Select этих свойств new(FirstName, LastName), присвойте свойству значение.For example, to return only the FirstName and LastName properties from an object that contains more than these properties, set the Select property to new(FirstName, LastName). Элемент управления будет динамически создавать новый класс, указанный new в методе. LinqDataSourceThe LinqDataSource control will dynamically create the new class that you specified in the new method.

As Ключевое слово можно использовать для назначения псевдонима выбранному значению.You can use the As keyword to assign an alias to a selected value. При назначении псевдонима необходимо включить свойства с псевдонимами в new метод.If you assign an alias, you must include the aliased properties in the new method. Любой элемент управления с привязкой к данным, привязанный к результатам LinqDataSource элемента управления, должен ссылаться на свойство по псевдониму.Any data-bound control that binds to the results from the LinqDataSource control must refer to the property by the alias. Например, если Select задать для new(Region As SalesRegion, Revenue / 1000 As RevenueThousands)свойства значение, элемент управления с привязкой к данным SalesRegion сможет получить доступ к двум свойствам и RevenueThousands.For example, if you set the Select property to new(Region As SalesRegion, Revenue / 1000 As RevenueThousands), the data-bound control can access two properties, SalesRegion and RevenueThousands.

new ФункцияSelect в свойстве используется в соответствии с условиями, перечисленными в следующей таблице.You use the new function in the Select property according to the conditions listed in the following table.

ВыбратьSelect Использование NewUse of new ПримерExample
Одно свойство.Single property. newне требуется.new not needed. Select="Category"
Несколько свойств.Multiple properties. newнеобходимая.new needed. Select="new(Category, Name)"
Одно или несколько свойств, имеющих псевдоним.Single or multiple properties that have an alias. newнеобходимая.new needed. Select="new(Category As CategoryGroup)"

Если вы хотите включить автоматическое изменение данных, но не хотите выводить все свойства из объекта данных, не устанавливайте Select свойство.If you want to enable automatic data modifications, but you do not want to display all the properties from the data object, do not set the Select property. Вместо этого следует управлять отображением с помощью элемента управления с привязкой к данным.Instead, manage the display through the data-bound control. При DetailsView использовании элемента управления AutoGenerateRows GridView или элемента управления необходимо AutoGenerateColumns также задать для falseсвойства или значение.When you use the DetailsView control or the GridView control, you must also set the AutoGenerateRows or the AutoGenerateColumns property to false. Все значения, не отображаемые в элементе управления с привязкой к данным, сохраняются в состоянии представления.Any values that are not displayed in the data-bound control are stored in view state. При выполнении обновления данных они передаются в источник данных без изменений.They are passed unchanged to the data source when the data update is performed.

При группировании данных в запросе в Select свойство можно включить статистические методы.When you group data in the query, you can include aggregate methods in the Select property. Можно использовать следующие статистические методы:You can use the following aggregate methods:

  • Count()

  • Average(столбец)Average( column )

  • Sum(столбец)Sum( column )

  • Max(столбец)Max( column )

  • Min(столбец)Min( column )

  • Where(условие)Where( condition )

  • Any()

  • All(условие)All( condition )

Дополнительные сведения см. в разделе NIB: Обзор серверного веб-элемента управления LinqDataSource и практические руководства. Группирование и статистическая обработка данных спомощью элемента управления LinqDataSource.For more information, see NIB: LinqDataSource Web Server Control Overview and How to: Group and Aggregate Data Using the LinqDataSource Control.

При группировании данных в Key Select свойство можно включать и It, которые являются динамически создаваемыми свойствами.When you group data, you can include Key and It, which are dynamically created properties, in the Select property. Key Свойство ссылается на значения в свойстве или свойствах, которые использовались для группирования данных.The Key property refers to the values in the property or properties that were used to group the data. Например, при группировании по свойству с именем Category Key свойство будет содержать Category каждое уникальное значение в свойстве.For example, if you group by a property named Category, the Key property will contain each unique value in the Category property. It Свойство ссылается на коллекцию отдельных записей в группировании данных.The It property refers to a collection of individual records in a grouping of data. Можно выполнить итерацию It по свойству, чтобы получить отдельные записи, Объединенные в операцию группирования.You can iterate over the It property to retrieve the individual records that have been consolidated in the grouping operation. Например, при группировании по свойству с именем Category It свойство содержит все отдельные записи, имеющие общее значение в Category свойстве.For example, if you group by a property named Category, the It property contains all the individual records that share a common value in the Category property.

Если включить It ключевое слово Select в свойство при группировании данных, необходимо It назначить псевдоним ключевому слову.If you include the It keyword in the Select property when you group data, you must assign an alias to the It keyword. Элемент управления выдаст исключение, если It не имеет псевдонима. LinqDataSourceThe LinqDataSource control will throw an exception if It does not have an alias. Key Ключевому слову можно назначить псевдоним, но это не является обязательным.You can assign an alias to the Key keyword, but this is not required.

Применяется к