Clase genérica EntityQuery
Representa una consulta LINQ sobre una colección de entidades.
Espacio de nombres: System.ServiceModel.DomainServices.Client
Ensamblado: System.ServiceModel.DomainServices.Client (en system.servicemodel.domainservices.client.dll)
Uso
'Uso
Dim instance As EntityQuery(Of TEntity)
Sintaxis
'Declaración
Public NotInheritable Class EntityQuery(Of TEntity As Entity)
Inherits EntityQuery
public sealed class EntityQuery<TEntity> : EntityQuery where TEntity : Entity
generic<typename TEntity> where TEntity : Entity
public ref class EntityQuery sealed : public EntityQuery
GenericParameters
- TEntity
Tipo de entidad.
Ejemplo
El código siguiente muestra cómo recuperar clientes desde el servicio de dominio. Filtra los clientes con números de teléfono que comienzan por 583 y los ordena alfabéticamente según LastName. Los resultados se muestran en una DataGrid.
Partial Public Class MainPage
Inherits UserControl
Private _customerContext As New CustomerDomainContext
Public Sub New()
InitializeComponent()
Dim query As EntityQuery(Of Customer)
query = _
From c In Me._customerContext.GetCustomersQuery() _
Where c.Phone.StartsWith("583") _
Order By c.LastName
Dim loadOp = Me._customerContext.Load(query)
CustomerGrid.ItemsSource = loadOp.Entities
End Sub
End Class
public partial class MainPage : UserControl
{
private CustomerDomainContext _customerContext = new CustomerDomainContext();
public MainPage()
{
InitializeComponent();
EntityQuery<Customer> query =
from c in _customerContext.GetCustomersQuery()
where c.Phone.StartsWith("583")
orderby c.LastName
select c;
LoadOperation<Customer> loadOp = this._customerContext.Load(query);
CustomerGrid.ItemsSource = loadOp.Entities;
}
}
Notas
En la aplicación cliente, puede aplicar un filtrado adicional sobre una consulta para restringir las entidades que se van a devolver. Se utiliza LINQ y un subconjunto de operaciones de consulta LINQ para modificar los resultados que devuelve la consulta. A continuación, se enumeran los operadores de consulta disponibles:
Where
OrderBy
ThenBy
Skip
Take
Una vez haya aplicado el filtrado adicional, pase el objeto EntityQuery como un parámetro en el método Load para ejecutar la consulta y obtener los resultados. Si la consulta cuenta con una clase QueryAttribute con la propiedad IsComposable que esté establecida en false, no podrá aplicar un filtrado adicional en la consulta. Por lo general, solamente las consultas que devuelven una única entidad tendrán IsComposable establecida en false.
Jerarquía de herencia
System.Object
System.ServiceModel.DomainServices.Client.EntityQuery
System.ServiceModel.DomainServices.Client.EntityQuery
Seguridad para subprocesos
Cualquier miembro estático público (Compartidos en Visual Basic) de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.
Plataformas
Plataformas de desarrollo
Microsoft Windows XP Home Edition, Windows XP Professional, Windows Server 2003 , Windows Server 2008 y Windows 2000
Plataformas de destino
Change History
Vea también
Referencia
Miembros EntityQuery
Espacio de nombres System.ServiceModel.DomainServices.Client