zoukankan      html  css  js  c++  java
  • 使用ObjectDataSource注意DeleteMethod、UpdateMethod、Insert等方法中参数的命名约定

    使用ObjectDataSource注意DeleteMethod、UpdateMethod等方法中参数的命名约定:
    如:    如果UpdateMethod原型为:
             <DataObjectMethod(DataObjectMethodType.Update, True)> _
        Public Shared Sub UpdateBuild(ByVal sBuildID As String, ByVal sBuildNo As String, ByVal sBuildLoc As String)
    则参数指定应为:
     <UpdateParameters>
                    <asp:ControlParameter ControlID="txtBuildID" Name="sBuildID" PropertyName="Text" />
                    <asp:ControlParameter ControlID="txtBuildNO" Name="sBuildNo" PropertyName="Text" />
                    <asp:ControlParameter ControlID="txtBuildLoc" Name="sBuildLoc" PropertyName="Text" />
                </UpdateParameters>
    这些中的parameter的名称要与UpdateMethod中的方法名称完全一样。
    GridView的 DataKeyNames属性被赋值为隐含对象的主键。这是在使用GridView来编辑或删除数据的要点,因为这个属性象指出了标识唯一记录的那个字段(或是一组字段)。
    ----------------补充ObjectDatasource的几个约定
    objectDatasource绑定到gridview时且使用<%#表达式绑定列时,要更新,需注意:
    1.设置gridview的datakeyNames为主键值(更新需要的主键列)
    2.objectdatasource中的update方法中参数名必须与取出的记录的字段名同名
    3.所有<%#bind列的数据字段名都需要出现在objectdatasource中的update方法中参数中
    4.如果需要根据原始主键值,则需要设置原始键值的格式化名称OldValuesParameterFormatString="ORG_{0}",且根据gridview的datakeyNames(例如为ID)中的字段名形成的ORG_ID这样的名称,要出现在objectdatasource的update方法中。
    5.不需要设置UpdateParameters属性,除非有额外的参数,ConflictDetection不需要设置(默认即使用OverwriteChanges)
    如果3或5没有满足,就会出现“找不到非泛型方法XXXXX”了
  • 相关阅读:
    JS 、JQ 获取宽高总结 & JS中getBoundingClientRect的作用及兼容方案
    JS与JQ 获取页面元素值的方法和差异对比
    ES6
    移动端:active伪类无效的解决方法
    JavaScript中valueOf函数与toString方法
    Reverse Words in a String -- LeetCode
    Count Primes -- LeetCodes (primality test)
    Maximum Size Subarray Sum Equals k -- LeetCode
    Subsets II -- LeetCode
    Maximum Product of Word Lengths -- LeetCode
  • 原文地址:https://www.cnblogs.com/Render/p/929523.html
Copyright © 2011-2022 走看看