代码之家  ›  专栏  ›  技术社区  ›  Shankar

asp.net c中SQLDATASOURCE的公共参数#

  •  0
  • Shankar  · 技术社区  · 6 年前

    Insert和Update参数对于我的Sqldatasource是相同的。

    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnStr %>" 
                 <InsertParameters>
                        <asp:Parameter Name="id" Type="Int32" />
                        <asp:Parameter Name="startdt" Type="DateTime" />
                        <asp:Parameter Name="enddt" Type="DateTime" />
                        <asp:Parameter Name="title" Type="String" />
                        <asp:Parameter Name="detail" Type="String" />
                    </InsertParameters>
                    <UpdateParameters>
                        <asp:Parameter Name="id" Type="Int32" />
                        <asp:Parameter Name="startdt" Type="DateTime" />
                        <asp:Parameter Name="enddt" Type="DateTime" />
                        <asp:Parameter Name="title" Type="String" />
                        <asp:Parameter Name="detail" Type="String" />                    
                    </UpdateParameters>
    

    在代码隐藏中,我必须根据插入或更新来编写:

    SqlDataSource1.InsertParameters["Title"].DefaultValue = "Title"
    
    SqlDataSource1.UpdateParameters["Title"].DefaultValue = "Title" 
    

    有很多同样的事情被重复。我想知道是否有办法消除aspx(相同参数)和代码隐藏中相同的重复行。这将大大节省时间,也有助于减少错误。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Tasos K. Sagar Jaybhay    6 年前

    两者 InsertParameters UpdateParameters ParameterCollection 上课。

    using System.Web.UI.WebControls;
    
    public void SetCommonParameters(ParameterCollection params)
    {
        params["Title"].DefaultValue = "Title";
        // add all common parameters
    }
    

    插入时,请调用:

    SetCommonParameters(SqlDataSource1.InsertParameters);
    

    SetCommonParameters(SqlDataSource1.UpdateParameters);