1

我不确定我做错了什么,但我的网格上没有返回任何值。

我的 .aspx.cs 文件中有以下内容:

  protected void Page_Load(object sender, EventArgs e)
  {
        SqlDS1.SelectParameters.Add("@ID", "6");    
  }

我的 .aspx 文件中有以下内容

     <asp:SqlDataSource ID="SqlDS1" runat="server" ConnectionString="<%$ ConnectionStrings:LisSQL %>"                
    SelectCommand="select RemediationID, RemediationDate, RemediationUser, RemediationAction from VAPHS_Remediation WHERE ID = @ID">
     <SelectParameters>
       <asp:Parameter Name="ID" Type="Int32" />
     </SelectParameters>
    </asp:SqlDataSource>


<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDS1" Width="1200px" AutoGenerateColumns="False"  AllowSorting="True">
       <Columns>
        <asp:BoundField DataField="RemediationID"  HeaderText="RemediationID"/>
        <asp:BoundField DataField="RemediationDate"  HeaderText="RemediationDate"/>
        <asp:BoundField DataField="RemediationUser"  HeaderText="RemediationUser"/>
        <asp:BoundField DataField="RemediationAction"  HeaderText="RemediationAction"/>             
    </Columns>
</asp:GridView>

尽管有 ID = 6 的记录,但没有返回任何内容

4

1 回答 1

2

您想使用DefaultValue而不是添加。

protected void Page_Load(object sender, EventArgs e)
{
  SqlDS1.SelectParameters["ID"].DefaultValue = "6";
}

您已经有了声明性参数;如果您使用Add参数,它将添加另一个重复的参数。

于 2013-07-26T18:51:01.127 回答