LinqDataSource.Select Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia właściwości i wartości obliczeniowe uwzględnione w pobranych danych.
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
Wartość właściwości
Ciąg używany do tworzenia klauzuli Select.
Przykłady
W poniższym przykładzie pokazano, jak ustawić Select właściwość na podzbiór właściwości w obiekcie danych.
<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>
W poniższym przykładzie pokazano, jak pobrać wartości we właściwości użytej do grupowania danych i pobrać średnią dla pogrupowanych rekordów. Słowo Key
kluczowe zawiera właściwość, która została użyta do grupowania danych. W tym przykładzie Key
będą zawierać wartości współużytkowane z ProductCategory
właściwości .
<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>
Uwagi
Jeśli właściwość nie zostanie ustawiona, kontrolka SelectLinqDataSource pobierze wszystkie właściwości (kolumny danych) z obiektu danych. Właściwość służy Select do pobierania podzestawu właściwości z obiektu lub obliczania nowych wartości podczas pobierania danych.
Należy określić właściwości do pobrania, ustawiając Select właściwość na nazwy właściwości, które mają zostać uwzględnione w zwracanych danych.
Jeśli pobierasz podzbiór właściwości z obiektu danych, LinqDataSource kontrolka dynamicznie tworzy klasę zawierającą tylko właściwości określone we Select właściwości. Klasa jest również tworzona dynamicznie, jeśli obliczasz właściwości, które nie są właściwościami w obiekcie danych. W takich przypadkach obiekt zwrócony z zapytania nie jest wystąpieniem klasy określonej we TableName właściwości . Zamiast tego należy użyć new
metody we Select właściwości , aby wskazać, że nowa klasa jest zwracana z zapytania. Aby na przykład zwrócić tylko FirstName
właściwości i LastName
z obiektu zawierającego więcej niż te właściwości, ustaw Select właściwość na new(FirstName, LastName)
wartość . Kontrolka LinqDataSource będzie dynamicznie tworzyć nową klasę określoną w metodzie new
.
Możesz użyć słowa kluczowego As
, aby przypisać alias do wybranej wartości. Jeśli przypiszesz alias, musisz uwzględnić właściwości aliasu w metodzie new
. Każda kontrolka powiązana z danymi powiązana z wynikami kontrolki LinqDataSource musi odwoływać się do właściwości za pomocą aliasu. Jeśli na przykład ustawisz właściwość na wartość , kontrolka Select powiązana z danymi będzie mogła uzyskać dostęp do dwóch właściwości i SalesRegion
RevenueThousands
.new(Region As SalesRegion, Revenue / 1000 As RevenueThousands)
Funkcja jest używana new
we Select właściwości zgodnie z warunkami wymienionymi w poniższej tabeli.
Wybierz | Korzystanie z nowych | Przykład |
---|---|---|
Pojedyncza właściwość. | new niewymaganych. |
Select="Category" |
Wiele właściwości. | new Potrzebne. |
Select="new(Category, Name)" |
Pojedyncze lub wiele właściwości, które mają alias. | new Potrzebne. |
Select="new(Category As CategoryGroup)" |
Jeśli chcesz włączyć automatyczne modyfikacje danych, ale nie chcesz wyświetlać wszystkich właściwości z obiektu danych, nie ustawiaj Select właściwości. Zamiast tego zarządzaj wyświetlaniem za pomocą kontrolki powiązanej z danymi. W przypadku używania kontrolki DetailsView lub kontrolki GridView należy również ustawić AutoGenerateRows właściwość lub AutoGenerateColumns na false
wartość . Wszystkie wartości, które nie są wyświetlane w kontrolce powiązanej z danymi, są przechowywane w stanie widoku. Są przekazywane bez zmian do źródła danych podczas wykonywania aktualizacji danych.
Podczas grupowania danych w zapytaniu można uwzględnić metody agregacji we Select właściwości . Można użyć następujących metod agregacji:
Count()
Average(
Kolumna)
Sum(
Kolumna)
Max(
Kolumna)
Min(
Kolumna)
Where(
Warunek)
Any()
All(
Warunek)
Aby uzyskać więcej informacji, zobacz LinqDataSource Web Server Control Overview (Omówienie kontroli serwera sieci Web LinqDataSource) i How to: Group and Aggregate Data Using the LinqDataSource Control (Jak grupować i agregować dane przy użyciu kontrolki LinqDataSource).
Podczas grupowania danych można uwzględnić Key
właściwości i It
, które są dynamicznie tworzone we Select właściwości . Właściwość Key
odwołuje się do wartości we właściwości lub właściwościach, które zostały użyte do grupowania danych. Jeśli na przykład grupujesz według właściwości o nazwie Category
, Key
właściwość będzie zawierać każdą unikatową Category
wartość we właściwości . Właściwość It
odnosi się do kolekcji pojedynczych rekordów w grupie danych. Możesz wykonać iterację It
po właściwości, aby pobrać poszczególne rekordy, które zostały skonsolidowane w operacji grupowania. Jeśli na przykład grupujesz według właściwości o nazwie Category
, It
właściwość zawiera wszystkie pojedyncze rekordy, które mają wspólną wartość we Category
właściwości.
Jeśli słowo kluczowe zostanie It
uwzględnione we Select właściwości podczas grupowania danych, musisz przypisać alias do słowa kluczowego It
. Kontrolka LinqDataSource zgłosi wyjątek, jeśli It
nie ma aliasu. Możesz przypisać alias do słowa kluczowego Key
, ale nie jest to wymagane.
Dotyczy
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla