将int作为sql参数

时间:2017-12-29 04:48:33

标签: c# sql asp.net parameters sqldatasource

我在asp.net中使用sql数据源,试图在这里有一个变量

SELECT TOP  @Number *
From Table

我希望变量来自同一页面上回发的下拉列表。该下拉列表中的所有选项都是整数。如何添加参数? DataSource.SelectParameters.Add()方法只接受字符串输入

1 个答案:

答案 0 :(得分:0)

  

DataSource.SelectParameters.Add()方法只接受字符串输入?

没有。您可以提供任何类型的值,并且必须使用SQLDbType来指定参数类型。

根据您对我的回答的评论。

var s = MealNumberDD.Text;

var param = new SQLParameter("MealNumber", SQLDbType.Int)
{
    Value = Convert.ToInt32(s)
};

RecipesDataSource.SelectParameters.Add(param); 
var query = "SELECT TOP (@MealNumber) * FROM Recipes"; 
RecipesDataSource.SelectCommand = query;