Search code examples
asp.netgridviewparameterssqldatasourceupdatecommand

How to set parameters for SqlDataSource UpdateCommand


For a Gridview:

I am trying to use a stored procedure for the first time in a SQLDataSource for the UpdateCommand:

<asp:SqlDataSource ID="TECT_DataSource" runat="server"
    ConnectionString="<%$ ConnectionStrings:OracleConnectionString %>" 
    ProviderName="<%$ ConnectionStrings:OracleConnectionString.ProviderName %>"
    SelectCommand="SELECT MPID, User_Id, Last_Name, First_Name
                   FROM Scripts.vw_Tect_Exam"
    UpdateCommand="P_TECT_UPD_EXAM_ID" UpdateCommandType="StoredProcedure">  
    <UpdateParameters>                    
        <asp:Parameter Name="MPID" Type="Int32"  />  
        <asp:Parameter Name="User_Id" Type="String" />   
    </UpdateParameters> 
</asp:SqlDataSource>

I am wondering how the UpdateParameters get their values set, since I only specify a name?
The procedure P_TECT_UPD_EXAM_ID expects two parameters as input: "in_MPID" and "in_UserId"
I am also wondering how to map those values to the input parameters for the procedure as the names are different?


Solution

  • You can set them something like this:

    Example : In the example MPID is the sql parameter name @MPID

    <UpdateParameters>                    
        <asp:ControlParameter Name="MPID" ControlID="MPID_TextBox" PropertyName="Text" />  
        <asp:ControlParameter Name="User_Id" ControlID="User_Id_TextBox" PropertyName="Text" />  
    </UpdateParameters> 
    

    Correction: Just spotted your proc param names so it must be

    <asp:ControlParameter Name="in_MPID" ...............
    <asp:ControlParameter Name="in_User_Id" ...............