Proprietà QueryAttribute.ResultLimit

Ottiene o imposta il numero massimo di risultati che possono essere restituiti da un'operazione 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
Dim value As Integer

value = instance.ResultLimit

instance.ResultLimit = value

Sintassi

'Dichiarazione
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)

Valore proprietà

Numero massimo di risultati che possono essere restituiti da un'operazione di query. Il valore predefinito è 0, che indica che non vi è alcun limite.

Esempio

Nell'esempio seguente viene illustrata l'applicazione di ResultLimit a un metodo di query che limita il numero di record di fatture che possono essere restituiti dalla query a 20.

<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);
}

Nel codice XAML seguente viene eseguito il rendering dei risultati in base alla query per i record di fatture. Si noti che i valori per LoadSize e PageSize sono entrambi correttamente impostati su un valore minore di quello impostato nell'oggetto ResultLimit applicato alla query.

<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>

Osservazioni

Impostare ResultLimit su un valore maggiore o uguale al valore assegnato alla proprietà LoadSize o PageSize. Se si imposta ResultLimit su un valore minore di quello di LoadSize o di PageSize nel risultato potrebbero mancare alcuni record e il paging potrebbe non essere coerente.

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

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