J'ai la recherche implémentée dans mon application, et elle va à une page de résultats où les résultats peuplent une table à travers un répéteur asp:. Je vais inclure le code ci-dessous.Comment renvoyer asp: nombre de répéteurs
C#
namespace WebApplication {
public partial class SearchResults : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) {
if (Request.Params["searchterm"] != null) {
ResultLabel.Text = "Search results for: " + Request.Params["searchterm"];
string searchTerm = Request.Params["searchterm"];
int results = 0; //If I were to set it on back end
string constr = ConfigurationManager.ConnectionStrings["CurrencyDb"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr)) {
using (SqlCommand cmd = new SqlCommand("dbo.SearchProc", con)) {
try {
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@SearchTerm", searchTerm);
con.Open();
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
sda.Fill(ds);
ResultsTableRepeater.DataSource = ds;
ResultsTableRepeater.DataBind();
}
catch (SqlException sqlex) {
throw new Exception("SQL Exception loading data from database. " + sqlex.Message);
}
catch (Exception ex) {
throw new Exception("Error loading results data from database. " + ex.Message);
}
}
}
}
}
}
}
asp.net
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<br />
<br />
<br />
<br />
<asp:Label ID="ResultLabel" runat="server"></asp:Label>
<br />
<br />
<br />
<br />
<asp:Repeater ID="ResultsTableRepeater" runat="server">
<HeaderTemplate>
<table class="td-table-bordered">
<th>Currency Id</th>
<th>Component</th>
<th>Version</th>
<th>Vendor</th>
<th>Tech Owner</th>
<th>Tech Contact</th>
<th>Fiscal Consideration</th>
<th>Currency Status</th>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%# Eval("CurrencyId") %></td>
<td><asp:HyperLink ID="UpdateLink" NavigateUrl='<%# Eval("CurrencyId", "http://10.155.54.101/Update?CurrencyId={0}") %>' runat="server" Target="_blank"><%# Eval("Model") %></asp:HyperLink></td>
<td><%# Eval("Version") %></td>
<td><%# Eval("Vendor") %></td>
<td><%# Eval("Tech Owner") %></td>
<td><%# Eval("Tech Contact") %></td>
<td><%# Eval("FiscalConsideration") %></td>
<td><%# Eval("Status") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
<asp:Label ID="StatusLabel" runat="server" Text="Label"></asp:Label>
</FooterTemplate>
</asp:Repeater>
<br />
</asp:Content>
Ce que je voudrais faire est d'imprimer un certain nombre nombre de résultats ont été retournés dans le pied de page. Mais je n'arrive pas à trouver un moyen de le faire durant toutes mes recherches, même si cela semble être une tâche simple.
Y a-t-il un moyen, que ce soit dans le code C# derrière ou dans l'aspx directement pour imprimer comment la quantité de résultats à la fin? Il serait facile s'il y avait une boucle while (reader.read) pour incrémenter un compteur, mais ce n'est pas le cas.
Merci d'avance pour votre aide!