Classe EntityQuery
Rappresenta una chiamata a un metodo di query.
Spazio dei nomi: System.ServiceModel.DomainServices.Client
Assembly: System.ServiceModel.DomainServices.Client (in system.servicemodel.domainservices.client.dll)
Utilizzo
'Utilizzo
Dim instance As EntityQuery
Sintassi
'Dichiarazione
Public MustInherit Class EntityQuery
public abstract class EntityQuery
public ref class EntityQuery abstract
public abstract class EntityQuery
public abstract class EntityQuery
Esempio
Nel codice riportato di seguito viene illustrato come recuperare clienti dal servizio del dominio. I clienti i cui numeri di telefono iniziano con 583 vengono filtrati e quindi disposti in ordine alfabetico in base a LastName. I risultati vengono visualizzati in 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;
}
}
Osservazioni
Nell'applicazione client è possibile applicare filtri aggiuntivi a una query per limitare le entità restituite. Per modificare i risultati restituiti da una query si utilizza LINQ e un subset di operatori di query LINQ. Di seguito sono elencati gli operatori di query disponibili:
Where
OrderBy
ThenBy
Skip
Take
Una volta applicati i filtri aggiuntivi, l'oggetto EntityQuery viene passato come parametro nel metodo Load per eseguire la query e ottenere i risultati. Se la query dispone di un oggetto QueryAttribute con la proprietà IsComposable impostata su false, non è possibile applicare filtri aggiuntivi alla query. In genere, solo le query che restituiscono una sola entità avranno la proprietà IsComposable impostata su false.
Gerarchia di ereditarietà
System.Object
System.ServiceModel.DomainServices.Client.EntityQuery
System.ServiceModel.DomainServices.Client.EntityQuery
Sicurezza dei thread
Tutti i membri statici pubblici (Shared in Visual Basic) di questo tipo sono thread-safe. Non è invece garantita la sicurezza dei membri dell'istanza.
Piattaforme
Piattaforme di sviluppo
Windows XP Home Edition, Windows XP Professional, Windows Server 2003 , Windows Server 2008 e Windows 2000
Piattaforme di destinazione
Change History
Vedere anche
Riferimento
Membri EntityQuery
Spazio dei nomi System.ServiceModel.DomainServices.Client