LinqDataSourceStatusEventArgs.TotalRowCount Proprietà

Definizione

Ottiene il numero totale di righe in un dataset da un'operazione di recupero dati.

public:
 property int TotalRowCount { int get(); };
public int TotalRowCount { get; }
member this.TotalRowCount : int
Public ReadOnly Property TotalRowCount As Integer

Valore della proprietà

Numero totale di righe in un dataset da un'operazione di recupero dati, -1 se l'oggetto LinqDataSourceStatusEventArgs è stato creato durante un'operazione di modifica dati, -1 se è stato abilitato il paging personalizzato impostando AutoPage su true e impostando RetrieveTotalRowCount su false.

Esempio

Nell'esempio seguente viene illustrata una pagina Web con un controllo, un LinqDataSourceGridView controllo e un Literal controllo. Il LinqDataSource controllo definisce un gestore eventi per l'evento Selected .

<asp:Literal ID="Literal1" runat="server"></asp:Literal> Total Records
<br />
<asp:LinqDataSource 
  AutoPage="true"
  ID="LinqDataSource1" 
  runat="server" 
  ContextTypeName="ExampleDataContext" 
  TableName="Customers" 
  onselected="LinqDataSource1_Selected">
</asp:LinqDataSource>
<asp:GridView 
  ID="GridView1" 
  runat="server" 
  AllowPaging="true" 
  AutoGenerateColumns="True" 
  DataKeyNames="CustomerID" 
  DataSourceID="LinqDataSource1">
</asp:GridView>
<asp:Literal ID="Literal1" runat="server"></asp:Literal> Total Records
<br />
<asp:LinqDataSource 
  AutoPage="true"
  ID="LinqDataSource1" 
  runat="server" 
  ContextTypeName="ExampleDataContext" 
  TableName="Customers">
</asp:LinqDataSource>
<asp:GridView 
  ID="GridView1" 
  runat="server" 
  AllowPaging="true" 
  AutoGenerateColumns="True" 
  DataKeyNames="CustomerID" 
  DataSourceID="LinqDataSource1">
</asp:GridView>

Nell'esempio seguente viene illustrato il codice per il gestore eventi per l'evento Selected . Il valore della TotalRowCount proprietà viene assegnato al Literal controllo.

protected void LinqDataSource1_Selected(object sender, LinqDataSourceStatusEventArgs e)
{
    Literal1.Text = e.TotalRowCount.ToString();
}
Protected Sub LinqDataSource1_Selected(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceStatusEventArgs) Handles LinqDataSource1.Selected
    Literal1.Text = e.TotalRowCount.ToString()
End Sub

Commenti

Si usa la TotalRowCount proprietà per ottenere il numero di record nel set di dati durante un'operazione di recupero dei dati. In genere, si recupera questa proprietà quando si visualizzano pagine di dati e si vuole visualizzare il numero totale di record.

Quando i dati vengono visualizzati in pagina, il valore nella TotalRowCount proprietà potrebbe essere diverso dal numero effettivo di righe restituite dalla query. Questa operazione è dovuta al fatto che la query restituisce solo il numero di righe necessarie per tale pagina di dati.

La TotalRowCount proprietà contiene il numero di record di una query solo quando viene eseguito l'accesso in un gestore eventi per l'evento Selected . Quando la proprietà viene accessibile da un gestore eventi per l'evento ContextCreated, , InsertedDeletedo , Updated la TotalRowCount proprietà contiene -1.

Il valore della TotalRowCount proprietà dipende AutoPage dalla proprietà del LinqDataSource controllo e AllowPaging dalla proprietà del controllo associato ai dati. Nella tabella seguente vengono riepilogati i valori possibili per la TotalRowCount proprietà.

Proprietà AutoPage del controllo LinqDataSource AllowPaging Proprietà del controllo associato ai dati TotalRowCount, proprietà Risultato
true true Numero di record per una query. I dati vengono automaticamente paginati.
false false Numero di record per una query. I dati non vengono paginati.
true false -1 I dati non vengono paginati.
false true Valore assegnato alla TotalRowCount proprietà nel gestore eventi per l'evento Selecting . I dati vengono impaginati in base ai valori specificati quando si personalizza il paging.

Si applica a