LinqDataSource.Select Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Alınan verilere dahil edilen özellikleri ve hesaplanan değerleri alır veya ayarlar.
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
Özellik Değeri
Select yan tümcesini oluşturmak için kullanılan bir dize.
Örnekler
Aşağıdaki örnekte, özelliğinin veri nesnesindeki Select özelliklerin bir alt kümesine nasıl ayarlanacağı gösterilmektedir.
<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>
Aşağıdaki örnekte, verileri gruplandırmak için kullanılan bir özellikteki değerlerin nasıl alındığı ve gruplandırılmış kayıtların ortalamasının nasıl alındığı gösterilmektedir. Key
anahtar sözcüğü, verileri gruplandırma için kullanılan özelliği içerir. Bu örnekte özelliğinden Key
ProductCategory
paylaşılan değerleri içerecektir.
<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>
Açıklamalar
Özelliğini ayarlamazsanız Select , LinqDataSource denetim veri nesnesinden tüm özellikleri (veri sütunları) alır. Özelliği, Select nesneden özelliklerin bir alt kümesini almak veya veriler alınırken yeni değerleri hesaplamak için kullanırsınız.
Özelliği döndürülen verilere eklemek istediğiniz özelliklerin adlarına ayarlayarak Select hangi özelliklerin alınacağını belirtirsiniz.
Veri nesnesinden özelliklerin bir alt kümesini alırsanız, LinqDataSource denetim dinamik olarak yalnızca özelliğinde Select belirttiğiniz özellikleri içeren bir sınıf oluşturur. Veri nesnesinde özellik olmayan özellikleri hesaplarsanız bir sınıf da dinamik olarak oluşturulur. Böyle durumlarda, sorgudan döndürülen nesne özelliğinde TableName belirtilen sınıfın bir örneği değildir. Bunun yerine, sorgudan yeni bir sınıf döndürüldüğünü belirtmek için özelliğinde Select yöntemini kullanmanız new
gerekir. Örneğin, bu özelliklerden daha fazlasını içeren bir nesneden yalnızca FirstName
ve LastName
özelliklerini döndürmek için özelliğini olarak new(FirstName, LastName)
ayarlayınSelect. Denetim, LinqDataSource yönteminde new
belirttiğiniz yeni sınıfı dinamik olarak oluşturur.
Seçili bir değere diğer ad atamak için anahtar sözcüğünü As
kullanabilirsiniz. Bir diğer ad atarsanız, yöntemine diğer ad özellikleri new
eklemeniz gerekir. Denetimden LinqDataSource sonuçlara bağlanan veriye bağlı tüm denetimler, diğer adıyla özelliğine başvurmalıdır. Örneğin, özelliğini olarak ayarlarsanızSelect, veriye bağlı denetim ve RevenueThousands
olmak üzere iki özelliğe SalesRegion
new(Region As SalesRegion, Revenue / 1000 As RevenueThousands)
erişebilir.
özelliğindeki new
Select işlevini, aşağıdaki tabloda listelenen koşullara göre kullanırsınız.
Seçim | Yeni kullanımı | Örnek |
---|---|---|
Tek özellik. | new gerekli değildir. |
Select="Category" |
Birden çok özellik. | new Gerekli. |
Select="new(Category, Name)" |
Diğer adı olan tek veya birden çok özellik. | new Gerekli. |
Select="new(Category As CategoryGroup)" |
Otomatik veri değişikliklerini etkinleştirmek istiyorsanız, ancak veri nesnesindeki tüm özellikleri görüntülemek istemiyorsanız, özelliğini ayarlamayın Select . Bunun yerine, veriye bağlı denetim aracılığıyla ekranı yönetin. Denetimi veya GridView denetimi kullandığınızdaDetailsView, veya AutoGenerateColumns özelliğini false
olarak da ayarlamanız AutoGenerateRows gerekir. Veriye bağlı denetimde görüntülenmeyen tüm değerler görünüm durumunda depolanır. Bunlar, veri güncelleştirmesi gerçekleştirildiğinde veri kaynağına değiştirilmeden geçirilir.
Sorgudaki verileri gruplandırdığınızda, özelliğine Select toplama yöntemleri ekleyebilirsiniz. Aşağıdaki toplama yöntemlerini kullanabilirsiniz:
Count()
Average(
Sütun)
Sum(
Sütun)
Max(
Sütun)
Min(
Sütun)
Where(
Durum)
Any()
All(
Durum)
Daha fazla bilgi için bkz. LinqDataSource Web Sunucusu Denetimine Genel Bakış ve Nasıl yapılır: LinqDataSource Denetimini Kullanarak Verileri Gruplandırma ve Toplama.
Verileri gruplandırırken, özelliğine dinamik olarak oluşturulan özellikler Select olan ve It
ekleyebilirsinizKey
. Key
özelliği, verileri gruplandırmak için kullanılan özellik veya özelliklerdeki değerlere başvurur. Örneğin, adlı Category
Key
bir özelliğe göre gruplandırdığınızda, özelliği özelliğindeki Category
her benzersiz değeri içerir. özelliği, It
bir veri grubundaki tek tek kayıtların koleksiyonunu ifade eder. Gruplandırma işleminde birleştirilmiş tek tek kayıtları almak için özelliğini yineleyebilirsiniz It
. Örneğin, adlı Category
bir özelliğe göre gruplandırma yaparsanız özelliği, özelliğinde It
ortak bir değeri Category
paylaşan tek tek tüm kayıtları içerir.
Verileri gruplandırırken özelliğine It
Select anahtar sözcüğü eklerseniz, anahtar sözcüğüne It
bir diğer ad atamanız gerekir. Diğer LinqDataSource adı yoksa It
denetim bir özel durum oluşturur. Anahtar sözcüğüne Key
bir diğer ad atayabilirsiniz, ancak bu gerekli değildir.
Şunlara uygulanır
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin