我对代码感到困惑,需要你的帮助。
由于我的RadGrid持有RadAsyncUpload以将文件保存在文件系统中,因此我必须在代码中配置我的数据源:( ...或者你可以说这是我知道如何使其工作的唯一方式。
我遇到了选择命令" WHERE" ..任何人都可以指导我如何提及选择参数。
这是我的代码;
public static string ConnectionString
{
get
{
return ConfigurationManager.ConnectionStrings["BaseConn"].ConnectionString;
}
}
protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
string PhoneID = RadComboBox1.SelectedItem.Value;
RadGrid1.DataSource = GetDataTable("SELECT * FROM [Products] WHERE ([ProductID] = @PhoneID)");
}
private static DataTable GetDataTable(string queryString)
{
SqlConnection MySqlConnection = new SqlConnection(ConnectionString);
SqlDataAdapter MySqlDataAdapter = new SqlDataAdapter();
MySqlDataAdapter.SelectCommand = new SqlCommand(queryString, MySqlConnection);
DataTable myDataTable = new DataTable();
MySqlConnection.Open();
try
{
MySqlDataAdapter.Fill(myDataTable);
}
finally
{
MySqlConnection.Close();
}
return myDataTable;
}
我可以提到选择参数的ProductID吗?
答案 0 :(得分:2)
我不确定我是否完全理解您的问题,但您是否只想将您的phoneId放入您的查询字符串中?
protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
string PhoneID = RadComboBox1.SelectedItem.Value;
RadGrid1.DataSource = GetDataTable(string.Format("SELECT * FROM [Products] WHERE ([ProductID] = {0})", PhoneID));
}
答案 1 :(得分:0)
RadGrid1.DataBind(); <===== INSERT THIS AFTER RadGrid1.DataSource line