Share via


Classe QueryAttribute

Specifica che un metodo DomainService è un metodo di query.

Spazio dei nomi: System.ServiceModel.DomainServices.Server
Assembly: System.ServiceModel.DomainServices.Server (in system.servicemodel.domainservices.server.dll)

Utilizzo

'Utilizzo
Dim instance As QueryAttribute

Sintassi

'Dichiarazione
<AttributeUsageAttribute(AttributeTargets.Method Or AttributeTargets.Property Or AttributeTargets.Field, AllowMultiple:=False, Inherited:=True)> _
Public NotInheritable Class QueryAttribute
    Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Method|AttributeTargets.Property|AttributeTargets.Field, AllowMultiple=false, Inherited=true)] 
public sealed class QueryAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Method|AttributeTargets::Property|AttributeTargets::Field, AllowMultiple=false, Inherited=true)] 
public ref class QueryAttribute sealed : public Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Method|AttributeTargets.Property|AttributeTargets.Field, AllowMultiple=false, Inherited=true) */ 
public final class QueryAttribute extends Attribute
AttributeUsageAttribute(AttributeTargets.Method|AttributeTargets.Property|AttributeTargets.Field, AllowMultiple=false, Inherited=true) 
public final class QueryAttribute extends Attribute

Osservazioni

L'attributo QueryAttribute si applica a un metodo per indicare che si tratta di un metodo di query oppure per specificare determinati valori per il metodo di query. Se il metodo corrisponde alla firma del metodo prevista per un metodo di query, non è necessario applicare QueryAttribute. Tramite il framework RIA Services verrà dedotto che un metodo con la firma di query prevista deve essere trattato come una query. L'oggetto IgnoreAttribute si applica a un metodo per impedire la generazione di un'operazione di dominio per tale metodo da parte del framework RIA Services.

Di seguito viene indicata la firma prevista per un metodo di query:

Valore restituito

IEnumerable<T>, IQueryable<T> o entità

Parametri

Qualsiasi numero

Prefisso del nome

Qualsiasi nome

Attributo

[Query] (C#)

-o-

<Query()> (Visual Basic)

Esempio

public IQueryable<Product> GetProducts() (C#)

-o-

Public Function GetProducts() As IQueryable(Of Product) (Visual Basic)

La classe QueryAttribute consente di impostare valori utilizzati per l'elaborazione della richiesta di query. È possibile impostare la proprietà ResultLimit per limitare il numero di record restituiti per una query. È possibile impostare questo valore per impedire a un utente di sovraccaricare il server con richieste di query di grandi dimensioni. Per ulteriori informazioni, vedere Security for WCF RIA Services. La proprietà IsComposable consente di specificare se il codice nel progetto client è in grado di modificare i risultati della query tramite il metodo di query in una nuova query. Quando, ad esempio, IsComposable è true, è possibile aggiungere una clausola Where nel codice client a una query nel server che restituisce tutti i record da una tabella di database.

Gerarchia di ereditarietà

System.Object
   System.Attribute
    System.ServiceModel.DomainServices.Server.QueryAttribute

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

Vedere anche

Riferimento

Membri QueryAttribute
Spazio dei nomi System.ServiceModel.DomainServices.Server