LinqDataSource.Select Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Eigenschaften und berechneten Werte ab, in den abgerufenen Daten eingeschlossen sind, oder legt diese fest.
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
Eigenschaftswert
Eine Zeichenfolge, die zum Erstellen der Select-Klausel verwendet wird.
Beispiele
Das folgende Beispiel zeigt, wie die Select -Eigenschaft auf eine Teilmenge der Eigenschaften im Datenobjekt festgelegt wird.
<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>
Das folgende Beispiel zeigt, wie Werte in einer Eigenschaft abgerufen werden, die zum Gruppieren von Daten und zum Abrufen des Durchschnitts für die gruppierten Datensätze verwendet wurde. Das Key
Schlüsselwort enthält die Eigenschaft, die zum Gruppieren von Daten verwendet wurde. In diesem Beispiel Key
enthält die freigegebenen Werte aus der ProductCategory
-Eigenschaft.
<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>
Hinweise
Wenn Sie die Select Eigenschaft nicht festlegen, ruft das LinqDataSource Steuerelement alle Eigenschaften (Datenspalten) aus dem Datenobjekt ab. Sie verwenden die Select -Eigenschaft, um eine Teilmenge von Eigenschaften aus dem -Objekt abzurufen oder neue Werte zu berechnen, wenn die Daten abgerufen werden.
Sie geben an, welche Eigenschaften abgerufen werden sollen, indem Sie die Select Eigenschaft auf die Namen der Eigenschaften festlegen, die Sie in die zurückgegebenen Daten einschließen möchten.
Wenn Sie eine Teilmenge von Eigenschaften aus dem Datenobjekt abrufen, erstellt das LinqDataSource Steuerelement dynamisch eine Klasse, die nur die Eigenschaften enthält, die Sie in der Select -Eigenschaft angeben. Eine Klasse wird auch dynamisch erstellt, wenn Sie Eigenschaften berechnen, die keine Eigenschaften im Datenobjekt sind. In diesen Fällen ist das von der Abfrage zurückgegebene Objekt keine Instanz der Klasse, die in der TableName -Eigenschaft angegeben ist. Stattdessen müssen Sie die new
-Methode in der Select -Eigenschaft verwenden, um anzugeben, dass eine neue Klasse von der Abfrage zurückgegeben wird. Um beispielsweise nur die FirstName
Eigenschaften und LastName
aus einem Objekt zurückzugeben, das mehr als diese Eigenschaften enthält, legen Sie die Select -Eigenschaft auf fest new(FirstName, LastName)
. Das LinqDataSource Steuerelement erstellt dynamisch die neue Klasse, die Sie in der new
-Methode angegeben haben.
Sie können das As
Schlüsselwort verwenden, um einem ausgewählten Wert einen Alias zuzuweisen. Wenn Sie einen Alias zuweisen, müssen Sie die Aliaseigenschaften in die new
-Methode einschließen. Jedes datengebundene Steuerelement, das an die Ergebnisse des LinqDataSource Steuerelements gebunden ist, muss durch den Alias auf die -Eigenschaft verweisen. Wenn Sie beispielsweise die Select -Eigenschaft auf new(Region As SalesRegion, Revenue / 1000 As RevenueThousands)
festlegen, kann das datengebundene Steuerelement auf zwei Eigenschaften SalesRegion
RevenueThousands
und zugreifen.
Sie verwenden die new
-Funktion in der Select -Eigenschaft gemäß den in der folgenden Tabelle aufgeführten Bedingungen.
Auswählen | Verwendung von new | Beispiel |
---|---|---|
Einzelne Eigenschaft. | new nicht erforderlich. |
Select="Category" |
Mehrere Eigenschaften. | new Benötigt. |
Select="new(Category, Name)" |
Einzelne oder mehrere Eigenschaften, die über einen Alias verfügen. | new Benötigt. |
Select="new(Category As CategoryGroup)" |
Wenn Sie automatische Datenänderungen aktivieren möchten, aber nicht alle Eigenschaften aus dem Datenobjekt anzeigen möchten, legen Sie die Select -Eigenschaft nicht fest. Verwalten Sie stattdessen die Anzeige über das datengebundene Steuerelement. Wenn Sie das DetailsView -Steuerelement oder das GridView -Steuerelement verwenden, müssen Sie auch die AutoGenerateRows -Eigenschaft oder die AutoGenerateColumns -Eigenschaft auf false
festlegen. Alle Werte, die nicht im datengebundenen Steuerelement angezeigt werden, werden im Ansichtszustand gespeichert. Sie werden unverändert an die Datenquelle übergeben, wenn die Datenaktualisierung ausgeführt wird.
Wenn Sie Daten in der Abfrage gruppieren, können Sie Aggregatmethoden in die Select -Eigenschaft einschließen. Sie können die folgenden Aggregatmethoden verwenden:
Count()
Average(
Spalte)
Sum(
Spalte)
Max(
Spalte)
Min(
Spalte)
Where(
condition)
Any()
All(
condition)
Weitere Informationen finden Sie unter Übersicht über linqDataSource-Webserversteuerelemente und Vorgehensweise: Gruppieren und Aggregieren von Daten mithilfe des LinqDataSource-Steuerelements.
Wenn Sie Daten gruppieren, können Sie und It
, die dynamisch erstellte Eigenschaften sind, in die Select -Eigenschaft einschließenKey
. Die Key
-Eigenschaft bezieht sich auf die Werte in der Eigenschaft oder den Eigenschaften, die zum Gruppieren der Daten verwendet wurden. Wenn Sie beispielsweise nach einer Eigenschaft mit dem Namen Category
gruppieren, enthält die Key
Eigenschaft jeden eindeutigen Wert in der Category
Eigenschaft. Die It
-Eigenschaft bezieht sich auf eine Auflistung einzelner Datensätze in einer Gruppierung von Daten. Sie können die It
-Eigenschaft durchlaufen, um die einzelnen Datensätze abzurufen, die im Gruppierungsvorgang konsolidiert wurden. Wenn Sie beispielsweise nach einer Eigenschaft mit dem Namen Category
gruppieren, enthält die It
-Eigenschaft alle einzelnen Datensätze, die einen gemeinsamen Wert in der Category
Eigenschaft verwenden.
Wenn Sie das It
Schlüsselwort in die Select -Eigenschaft einschließen, wenn Sie Daten gruppieren, müssen Sie dem It
Schlüsselwort einen Alias zuweisen. Das LinqDataSource Steuerelement löst eine Ausnahme aus, wenn It
kein Alias vorhanden ist. Sie können dem Key
Schlüsselwort einen Alias zuweisen, dies ist jedoch nicht erforderlich.
Gilt für:
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für