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 utworzenia klauzuli Select.
Przykłady
W poniższym przykładzie pokazano, jak ustawić Select właściwość na podzestaw 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żywanej 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 udostępnione 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 Select , kontrolka LinqDataSource pobiera 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.
Określ 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 zwróconych danych.
Jeśli pobierasz podzestaw 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)
. 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 LinqDataSource wynikami kontrolki musi odwoływać się do właściwości przez alias. Jeśli na przykład ustawisz właściwość na , kontrolka Select powiązana z danymi może uzyskać dostęp do dwóch właściwości i SalesRegion
RevenueThousands
.new(Region As SalesRegion, Revenue / 1000 As RevenueThousands)
Funkcja w Select właściwości jest używana new
zgodnie z warunkami wymienionymi w poniższej tabeli.
Wybierz | Korzystanie z nowych | Przykład |
---|---|---|
Pojedyncza właściwość. | new nie jest to konieczne. |
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świetlaczem za pomocą kontrolki powiązanej z danymi. W przypadku używania kontrolki lub kontrolki DetailsViewGridView należy również ustawić AutoGenerateRows właściwość lub AutoGenerateColumns na false
. Wszystkie wartości, które nie są wyświetlane w kontrolce powiązanej z danymi, są przechowywane w stanie widoku. Są one przekazywane bez zmian do źródła danych po wykonaniu 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 and How to: Group and Aggregate Data Using the LinqDataSource Control (Omówienie kontroli serwera sieci Web LinqDataSource) i How to: Group and Aggregate Data Using the LinqDataSource Control (Instrukcje: grupowanie i agregowanie danych 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 pogrupujesz według właściwości o nazwie Category
, Key
właściwość będzie zawierać każdą unikatową wartość we Category
właściwości. Właściwość It
odwołuje się do kolekcji pojedynczych rekordów w grupie danych. Można wykonać iterację nad właściwością It
, aby pobrać poszczególne rekordy, które zostały skonsolidowane w operacji grupowania. Jeśli na przykład pogrupujesz według właściwości o nazwie Category
, It
właściwość zawiera wszystkie poszczególne rekordy, które współdzielą wspólną wartość we Category
właściwości.
Jeśli słowo kluczowe jest uwzględniane It
we właściwości podczas Select 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