Comparteix a través de


LinqDataSourceSelectEventArgs.Result Propiedad

Definición

Obtiene o establece el objeto de datos que se utiliza en la consulta de datos.

public:
 property System::Object ^ Result { System::Object ^ get(); void set(System::Object ^ value); };
public object Result { get; set; }
member this.Result : obj with get, set
Public Property Result As Object

Valor de propiedad

Objeto que representa los datos de la consulta.

Ejemplos

En el ejemplo siguiente se muestra cómo establecer la Result propiedad en el resultado de una consulta LINQ.

protected void LinqDataSource_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
    ExampleDataContext exampleContext = new ExampleDataContext();
    
    e.Result = from p in exampleContext.Products 
         where p.Category == "Beverages"
         select new {
           ID = p.ProductID,
           Name = p.Name
         };
}
Protected Sub LinqDataSource_Selecting(sender As Object, e As LinqDataSourceSelectEventArgs)
    Dim exampleContext As New ExampleDataContext()

    e.Result = From p In exampleContext.Products Where p.Category = "Beverages"
               Select New With { _
                    Key .ID = p.ProductID, _
                    Key .Name = p.Name _
    }
End Sub

En el ejemplo siguiente se muestra cómo establecer la Result propiedad en una matriz de valores de cadena que se define en la página web.

public partial class Default3 : System.Web.UI.Page
{
    string[] citiesArray = 
    { 
        "Atlanta", 
        "Charlotte", 
        "Denver", 
        "New York", 
        "San Francisco" 
    };

    protected void Page_Load(object sender, EventArgs e)
    {
    }

    protected void LinqDataSource_Selecting(object sender, LinqDataSourceSelectEventArgs e)
    {
        var cities = from city in citiesArray
                     where city.CompareTo("B") > 0
                     select city;
        e.Result = cities;
        // Or we could set e.Result = citiesArray to return all rows.
    }
}
Partial Class Default3
    Inherits System.Web.UI.Page

    Dim citiesArray() As String = _
    { _
        "Atlanta", _
        "Charlotte", _
        "Denver", _
        "New York", _
        "San Francisco" _
    }


    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
       
    End Sub

    
    Protected Sub LinqDataSource_Selecting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceSelectEventArgs) Handles LinqDataSource1.Selecting
        Dim cities = From city In citiesArray _
                     Where city > "B" _
                     Select city
        e.Result = cities
        ' Or we could set e.Result = citiesArray to return all rows.
    End Sub
    
End Class

Comentarios

De forma predeterminada, el LinqDataSource control aplica sus expresiones de consulta al objeto definido en la TableName propiedad . En un controlador para el Selecting evento, puede cambiar manualmente qué objeto se consulta estableciendo la Result propiedad en un objeto . Por ejemplo, puede usar la Result propiedad para consultar una colección en memoria en la página web o para obtener los resultados de una expresión de consulta LINQ. Puede establecer la Result propiedad en cualquier objeto. Si el objeto no implementa la IEnumerable<T> interfaz , el LinqDataSource control encapsula el objeto en un objeto que implementa la IEnumerable<T> interfaz .

Cuando la Result propiedad se establece en cualquier valor distinto nullde , el LinqDataSource control no consulta el objeto definido en la TableName propiedad . En su lugar, consulta el objeto en la Result propiedad .

Nota

Cuando se establece la Result propiedad en un objeto , no se usa null para representar un objeto que no contiene ningún dato. El LinqDataSource control interpreta null para significar que la Result propiedad no está establecida y creará y consultará el objeto en la TableName propiedad . Para representar un objeto que no contiene datos, establezca la Result propiedad en un IList objeto o IList<T> que no contenga ningún elemento.

Los ContextCreatingeventos , ContextCreatedy ContextDisposing no se generan al establecer mediante programación la Result propiedad en un objeto y cuando se aplican dos condiciones adicionales. Las condiciones son que los valores originales no tienen que almacenarse en estado de vista o el objeto de la Result propiedad implementa la ITable interfaz .

Se aplica a

Consulte también