Partager via


Propriété QueryAttribute.ResultLimit

Obtient ou définit le nombre maximal de résultats qu'une opération de requête doit retourner.

Espace de noms: System.ServiceModel.DomainServices.Server
Assembly : System.ServiceModel.DomainServices.Server (dans system.servicemodel.domainservices.server.dll)

Utilisation

'Utilisation
Dim instance As QueryAttribute
Dim value As Integer

value = instance.ResultLimit

instance.ResultLimit = value

Syntaxe

'Déclaration
Public Property ResultLimit As Integer
public int ResultLimit { get; set; }
public:
property int ResultLimit {
    int get ();
    void set (int value);
}
/** @property */
public int get_ResultLimit ()

/** @property */
public void set_ResultLimit (int value)
public function get ResultLimit () : int

public function set ResultLimit (value : int)

Valeur de propriété

Nombre maximal de résultats qu'une opération de requête doit retourner. La valeur par défaut est 0, ce qui indique qu'il n'y a aucune limite.

Exemple

L'exemple suivant illustre ResultLimit appliqué à une méthode de requête qui limite à 20 le nombre d'enregistrements de facture que la requête peut retourner.

<Query(ResultLimit := 20)> _
Public Function GetInvoiceTables() As IQueryable(Of InvoiceTable)
    Return Me.ObjectContext.InvoiceTables.OrderBy(Function(o) o.[Date]).ThenBy(Function(o) o.InvoiceID)
End Function
[Query(ResultLimit = 20)]
public IQueryable<InvoiceTable> GetInvoiceTables()
{
    return this.ObjectContext.InvoiceTables.OrderBy(o => o.Date).ThenBy(o => o.InvoiceID);
}

Dans le XAML suivant, les résultats rendus sont ceux de la requête des enregistrements de facture. Notez que les valeurs de LoadSize et PageSize sont toutes deux correctement définies sur une valeur inférieure à celle du ResultLimit appliqué à la requête.

<Grid x:Name="LayoutRoot">
    <ScrollViewer x:Name="PageScrollViewer" Style="{StaticResource PageScrollViewerStyle}">
        <StackPanel x:Name="ContentStackPanel">
            <TextBlock x:Name="HeaderText" Style="{StaticResource HeaderTextStyle}" Text="Invoices"/>
            <TextBlock x:Name="ContentText" Style="{StaticResource ContentTextStyle}" Text="Invoices - Simple View"/>
            <riaControls:DomainDataSource Name="domainDataSource1" AutoLoad="True" QueryName="GetInvoicesTablesQuery" LoadSize="10">
                <riaControls:DomainDataSource.DomainContext>
                    <ds:TestDomainContext></ds:TestDomainContext>
                </riaControls:DomainDataSource.DomainContext>
                <riaControls:DomainDataSource.SortDescriptors>
                    <riaControls:SortDescriptor PropertyPath="InvoiceID" Direction="Ascending"></riaControls:SortDescriptor>
                    <riaControls:SortDescriptor PropertyPath="Date" Direction="Ascending"></riaControls:SortDescriptor>
                </riaControls:DomainDataSource.SortDescriptors>
            </riaControls:DomainDataSource>
            <my:DataGrid ItemsSource="{Binding Data, ElementName=domainDataSource1}" />
            <my:DataPager PageSize="10" Source="{Binding Data, ElementName=domainDataSource1}" />
        </StackPanel>
    </ScrollViewer>
</Grid>

Notes

Affectez à ResultLimit une valeur égale ou supérieur à celle que vous affectez à la propriété LoadSize ou PageSize. Affecter à ResultLimit une valeur inférieure à celle de LoadSize ou PageSize peut aboutir à l'absence de certains enregistrements dans les résultats et à une pagination incohérente.

Sécurité des threads

Tous les membres publics statiques (Partagés dans Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Plateformes

Plateformes de développement

Windows XP Édition familiale, Windows XP Professionnel, Windows Server 2003 , Windows Server 2008 et Windows 2000

Plateformes cibles

Change History

Voir aussi

Référence

Classe QueryAttribute
Membres QueryAttribute
Espace de noms System.ServiceModel.DomainServices.Server