CustomExpression Sınıf

Tanım

Bir olaya yanıt olarak çağrılan özel bir LINQ sorgusu belirtmek için bir yol sağlar.

public ref class CustomExpression : System::Web::UI::WebControls::Expressions::ParameterDataSourceExpression
public class CustomExpression : System.Web.UI.WebControls.Expressions.ParameterDataSourceExpression
type CustomExpression = class
    inherit ParameterDataSourceExpression
Public Class CustomExpression
Inherits ParameterDataSourceExpression
Devralma

Örnekler

Aşağıdaki örnekte, denetim tarafından kullanılan bir CustomExpression nesnenin QueryExtender nasıl oluşturulacağı gösterilmektedir. Özel ifade, özel bir LINQ ifadesi içeren yöntemini çağırır FilterProducts . Filtreleme işleminin sonucu bir GridView denetimde görüntülenir.

Aşağıdaki örnekte, özel bir LINQ sorgusu içeren bir olay işleyicisi gösterilmektedir. İfade AdventureWorks veritabanındaKi Product tablosunu filtreler ve 3.500,00 TL'den büyük veya buna eşit bir liste fiyatına sahip ürünleri görüntüler.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.Expressions;
using System.Linq;

public partial class _Default : System.Web.UI.Page 
{
    protected void FilterProducts(object sender, CustomExpressionEventArgs e)
    {
        e.Query = from p in e.Query.Cast<Product>()
                  where p.ListPrice >= 3500
                  select p;
    }
}
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.Expressions
Imports System.Data.Linq

Partial Class CustomVB
    Inherits System.Web.UI.Page

    Protected Sub FilterProducts(ByVal sender As Object, ByVal e As CustomExpressionEventArgs)
        e.Query = From p In e.Query.Cast(Of Product)() _
            Where p.ListPrice >= 3500 _
            Select p
    End Sub

Açıklamalar

CustomExpression sınıfı, denetimle birlikte QueryExtender kullanılır. Denetim, QueryExtender verileri filtrelemek için kullanabileceğiniz çeşitli seçenekleri destekler. Denetim QueryExtender , dizeleri aramanızı, belirtilen aralık arasındaki değerleri aramanızı, bir tablodaki özellik değerini belirtilen değerle karşılaştırmanızı ve verileri sıralamanızı sağlayan filtreleri destekler. Bu seçenekler denetimde QueryExtender LINQ ifadeleri olarak sağlanır. Bu filtre ifadelerini kullanabilir veya denetimde QueryExtender kullanabileceğiniz özel bir ifade sağlayabilirsiniz. sınıfı, CustomExpression uygulamanızda özel bir ifade belirtmenize ve bunu bir olay işleyicisinde çağırmanıza olanak tanır.

Not

sınıfını kullanarak MethodExpression olay işleyicisi yerine bir yöntem tarafından çağrılan özel bir sorgu sağlayabilirsiniz.

Oluşturucular

CustomExpression()

CustomExpression sınıfının yeni bir örneğini başlatır.

Özellikler

Context

HttpContextSahip denetiminin örneğini alır.

(Devralındığı yer: DataSourceExpression)
DataSource

Sahip denetimiyle ilişkili veri kaynağı nesnesini alır.

(Devralındığı yer: DataSourceExpression)
IsTrackingViewState

Bir veri kaynağı ifadesi nesnesinin görünüm durumu değişikliklerini izlemediğini gösteren bir değer alır.

(Devralındığı yer: DataSourceExpression)
Owner

Sahip denetimini alır.

(Devralındığı yer: DataSourceExpression)
Parameters

Bu nesneyle ilişkili parametreleri alır DataSourceExpression .

(Devralındığı yer: ParameterDataSourceExpression)
ViewState

StateBagGeçerli görünüm durumu bilgilerini içeren sınıfın bir örneğini alır.

(Devralındığı yer: DataSourceExpression)

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetQueryable(IQueryable)

Veri kaynağının kullandığı değiştirilmiş IQueryable nesneye erişim sağlar.

GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
LoadViewState(Object)

, ParameterDataSourceExpression Kalıcı olması gereken nesne içindeki değerlerin durumunu yükler.

(Devralındığı yer: ParameterDataSourceExpression)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
SaveViewState()

Nesnenin geçerli görünüm durumunu kaydeder ParameterDataSourceExpression .

(Devralındığı yer: ParameterDataSourceExpression)
SetContext(Control, HttpContext, IQueryableDataSource)

Belirtilen sahip denetimini, bağlamı ve veri kaynağını kullanarak ifadeyi yürütür.

(Devralındığı yer: ParameterDataSourceExpression)
SetDirty()

Nesneyi, DataSourceExpression durumu görünüm durumuna kaydedilecek şekilde işaretler.

(Devralındığı yer: DataSourceExpression)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)
TrackViewState()

Nesnenin nesnenin nesnesinde ParameterDataSourceExpression depolanabilmesi için nesnenin görünüm durumu değişikliklerini izler StateBag .

(Devralındığı yer: ParameterDataSourceExpression)

Ekinlikler

Querying

IQueryable Veri kaynağı değeri ayarlandığında gerçekleşir.

Belirtik Arabirim Kullanımları

IStateManager.IsTrackingViewState

Bir sınıf tarafından uygulandığında, bir veri kaynağı ifadesi nesnesinin görünüm durumu değişikliklerini izlemediğini gösteren bir değer alır.

(Devralındığı yer: DataSourceExpression)
IStateManager.LoadViewState(Object)

Bir sınıf tarafından uygulandığında, veri kaynağı ifade nesnesinin daha önce kaydedilen görünüm durumunu yükler.

(Devralındığı yer: DataSourceExpression)
IStateManager.SaveViewState()

Bir sınıf tarafından uygulandığında, nesnenin geçerli görünüm durumunu kaydeder DataSourceExpression .

(Devralındığı yer: DataSourceExpression)
IStateManager.TrackViewState()

Bir sınıf tarafından uygulandığında, DataSourceExpression değişikliklerin StateBag veri kaynağı ifade nesnesi için nesne üzerinde depolanabilmesi için nesnenin görünüm durumu değişikliklerini izler.

(Devralındığı yer: DataSourceExpression)

Şunlara uygulanır

Ayrıca bkz.