如何调试使用内联sqldatasource时传递的参数?

时间:2013-03-21 21:40:26

标签: c# asp.net sqldatasource

假设我在.aspx页面上有某种数据网格或转发器,我的数据源是内联定义的:

<asp:SqlDataSource ID="ds1" runat="server" ConnectionString="..."
SelectCommand="some_proc" ...>
  <SelectParameters>
             <asp:ControlParameter ControlID="ddlYear" Name="Year" .. />
   </SelectParameters>
</asp:SqlDataSource>

如何调试我的代码,以便在绑定到网格时能够准确看到Year的值是什么?

1 个答案:

答案 0 :(得分:6)

您可以挂钩SqlDataSource事件:

protected void SqlDataSource1_Selecting(object sender, SqlDataSourceSelectingEventArgs e)
{
    foreach (DbParameter P in e.Command.Parameters)
    {
        Response.Write(P.ParameterName + "<br />");
        Response.Write(P.DbType.ToString() + "<br />");
        Response.Write(P.Value.ToString() + "<br />");
    }
}

当然,您可能希望将输出发送到调试窗口。