-3

次の TextBox と Button があります。

<asp:TextBox ID="input" runat="server" Height="10px" Width="60px">123456</asp:TextBox>

<asp:Button ID="Button1" runat="server" OnClick="ViewButton_Click" Text="Button" />

TextBox のデフォルト値は '123456' です。ボタンをクリックすると、次のことがトリガーされます。

public byte[] GetImageData(int ID)
    {

     ....

        SqlCommand command = new SqlCommand("select FileImage from TestServ.dbo.Tickets WHERE (FileType = 'PDF' AND ID = 111111)", connection);

     ....

    }

現在、ID は手動で '111111' に設定されており、入力された ID に対応するサーバーから PDF を取得するために使用されます。しかし、私が問題を抱えているのは、コードを変更して、「入力」TextBox (現在は 123456) に入力した ID を取得し、「111111」ではなく上記のコードの ID として設定することです。

4

2 に答える 2

4

TryParseメソッドを使用して入力テキスト ボックスの内容を整数GetImageDataに変換し、変換された値を渡すメソッドを 呼び出すだけです。

もちろん、GetImageDataパラメーター化されたクエリを使用して、ID をパラメーターとしてデータベースにクエリを実行するフレームワーク コードに渡します。

public byte[] GetImageData(int ID)
{

    string cmdText = "select FileImage from TestServ.dbo.Tickets " + 
                     "WHERE (FileType = 'PDF' AND ID = @id)";
    SqlCommand command = new SqlCommand(cmdText, connection);
    command.Parameters.AddWithValue("@id", ID);

    ....

}

呼び出しコード.....

int ID;
if(Int32.TryParse(input.Text, out ID))
    byte[] result = GetImageData(ID);

else

  .... show an error ....
于 2013-10-24T14:25:33.643 に答える