C# 将文本框输入指定给变量
我有以下文本框和按钮:C# 将文本框输入指定给变量,c#,asp.net,visual-studio,visual-studio-2012,C#,Asp.net,Visual Studio,Visual Studio 2012,我有以下文本框和按钮: <asp:TextBox ID="input" runat="server" Height="10px" Width="60px">123456</asp:TextBox> <asp:Button ID="Button1" runat="server" OnClick="ViewButton_Click" Text="Button" /> 目前,该ID被手动设置为“111111”,用于从与输入的ID对应的服务器获取PDF。但是,我遇
<asp:TextBox ID="input" runat="server" Height="10px" Width="60px">123456</asp:TextBox>
<asp:Button ID="Button1" runat="server" OnClick="ViewButton_Click" Text="Button" />
目前,该ID被手动设置为“111111”,用于从与输入的ID对应的服务器获取PDF。但是,我遇到的问题是修改代码,使其获取我在“输入”文本框(当前为123456)中输入的ID,然后将其设置为上述代码中的ID,而不是“111111”。您可以使用参数化查询,如
SqlCommand command = new SqlCommand("select FileImage from TestServ.dbo.Tickets WHERE (FileType = 'PDF' AND ID = @ID)", connection);
command.Parameters.AddWithValue("@ID", input.Text);
注意:假设
GetImageData
函数位于代码隐藏中,您可以尝试使用该方法将输入文本框的内容转换为整数,然后调用传递转换值的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 ....
我想也是这样。我至少会解析
文本框
,以确保它值得进行db调用。谢谢你教我TryParse()
方法!这是我今天的新东西。@CodeswithHammer谢谢你,你的话比30次的重复更有意义。很高兴能帮上忙。
int ID;
if(Int32.TryParse(input.Text, out ID))
byte[] result = GetImageData(ID);
else
.... show an error ....