2012-05-03 4 views
1

データテーブルをgridviewにバインドするための単純なgridviewとSqlDataソースがあります。GridView選択ボタン:選択した行から値を取得し、別のページにリダイレクトし、ページの値を使用します。

私の質問は: グリッドビューから「選択」ボタンをクリックします。現在選択されている行の列から値を取得し、ユーザーを別のページにリダイレクトし、取得した値でSQL Selectコマンドを実行したいと思います。

値を取得する方法はわかっていますが、ユーザーと値を別のページにリダイレクトして、値を取得してSQL文を実行する必要があるかどうかわかりません。

は、リダイレクトされたページ

..あなただけの Respose.Redirect(url);を行うと、あなたのために働くだろうクエリ文字列に値を添付する必要があり、
i.e Response.Redirect("xyz.aspx?selectedValue = " + selectedvalue); 

答えて

1

ありがとうRequest.QueryString["selectedValue"]をクエリ文字列からではなく、これを実行する前に選択した値を取得しますQuerystring変数がnullでないことを確認してください。

または

情報が敏感であれば、あなたはSession変数の使用をするよりも、ユーザーがそれを見たいと思ってはいけないとリダイレクトページResponse.Redirect(url);

Session["SelectedValue"] = SelectValue; 
Respose.Redirect(url); 

を行うよりもすることはstring s = Session["SelectedValue"].ToString()をクエリ文字列から選択した値を取得しますこれを行う前に、セッション変数がnullでないことを確認してください。

+0

は、[OK]を、私は今テストします、あなたに感謝し、それが働いOK – Alexander

+0

を働いていた場合、私はあなたを教えてあげましょう、しかし、問題は、私がGridViewコントロールから選択せずに「リダイレクト」ページに移動したい場合は、コードは常に実行されます。私はそれがGridviewの選択のみで動作するようにしたい。 – Alexander

0

この点についてはどうですか?

<asp:GridView ID="GridView1" Width="100%" runat="server" 
    ClientIDMode="Static" AutoGenerateColumns="False" Font-Names="Arial" Font-Size="X-Small"> 
<Columns> 
    <asp:HyperLinkField DataTextField="YouFieldNameForText" DataNavigateUrlFields="YouFieldNameForValue" DataNavigateUrlFormatString="YourURL.aspx?YourValue={0}" 
     HeaderText="header text" Target="_self" /> 
</Columns> 
</asp:GridView> 
関連する問題