リソースのオンライン データベースのように機能する単純な C# Web アプリを構築しています。
私のテーブルには、カテゴリと著者の列があります。
テーブル内のカテゴリ値をクリックすると、テーブルが更新され、選択されたカテゴリのみが表示されます。
これを行うには、次のコードを使用しました。
GridViewRow clickedRow = ((LinkButton)sender).NamingContainer as GridViewRow;
Label category = (Label)clickedRow.FindControl("lbl_category");
String selectedCategory = category.Text.ToString();
string query =
("SELECT * FROM main WHERE category='" + selectedCategory + "' ORDER BY ID ASC");
これは、カテゴリ/作成者を初めてクリックしたときに正常に機能します。しかし、テーブルが更新された後、別のカテゴリまたは著者を選択すると、テーブルに間違ったレコードが表示されます。
どうすればこれを解決できますか?
ここでページを表示できます: カテゴリ'Health'
をクリックしてから をクリックしてみてください'Puvent, Kevin'
。期待していた結果とは違う。おもう
あなたがページを見ると、質問はおそらくもっと理にかなっています:)
編集 - これは gridview バインディング コードです。
<asp:TemplateField HeaderText="Category" ItemStyle-Width="15%">
<ItemTemplate>
<asp:Label ID="lbl_category" Text='<%# Bind("category")%>' runat="server" style="display:none;"></asp:Label>
<asp:LinkButton ID="lbl_linkCategory" Text='<%# Bind("category")%>' runat="server" OnClick="linkCategory" CommandArgument='<%# Bind("category")%>' />
</ItemTemplate>
</asp:TemplateField>