使用代码隐藏中的参数将Gridview SqlDataSource动态更改为存储过程

使用代码隐藏中的参数将Gridview SqlDataSource动态更改为存储过程,sql,asp.net,Sql,Asp.net,我有一个gridview,其中包含以下sqldatasource代码: <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:TSOstring %>" SelectCommand="TSOList" SelectCommandType="StoredProcedure"> 我要做的是将sqldatasource1更改为另一个存储过程,其

我有一个gridview,其中包含以下sqldatasource代码:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:TSOstring %>" SelectCommand="TSOList" SelectCommandType="StoredProcedure">
我要做的是将sqldatasource1更改为另一个存储过程,其中包含一个名为“@DieNo”的参数。将文本框值传递给参数并返回结果。我遇到的问题是,它总是给我错误“Sys.WebForms.PageRequestManagerServerErrorException:过程或函数'TSOSearchByDie'需要参数'@DieNo',但未提供该参数”

有什么想法吗

谢谢

问题解决了。我不需要代码中的@符号

            SqlDataSource1.SelectCommandType = SqlDataSourceCommandType.StoredProcedure; 
            SqlDataSource1.SelectCommand = "[dbo].[TSOSearchByDie]";     
            SqlDataSource1.SelectParameters.Add("@DieNo", TypeCode.String, txt_die.Text.ToString());