<asp:SqlDataSource ID="SDS_kindextend" runat="server"  ConnectionString="<%$ ConnectionStrings:project_ConnectionString_kindextend %>"
                     SelectCommand="select id as 序号,kind_name as 项目类型,kind_build as 建设内容,kind_unit as 单位 from kind_extend" UpdateCommand="update kind_extend set kind_unit=@kind_unit where id=@id">
                     <UpdateParameters>
                         <asp:Parameter Name="kind_unit" /> 
                         <asp:Parameter Name="id" />
                     </UpdateParameters>
                 </asp:SqlDataSource>
我想问下,更新的时候你们是怎么做的,我想用一条update语句实现,但是要有参数,可是怎么传入参数我不懂,高手啊,不吝指教吧

解决方案 »

  1.   

    asp.net 2.0开始出现的DataSource控件(SqlDataSource、ObjectDataSource等),其实利用好的话是有很大帮助的。当然不用你手动写Sql语句了,一般通过向导自动生成。看似自己用Sql语句像是一切尽在掌握似的,其实利用DataSource控件你才是可以掌控更多。比如和一个ObjectDataSource绑定的GridView上进行更新操作时,你可以在GridView.RowUpdating设一道卡,根据条件让这次更新继续下去或取消,通过这个卡以后你又可以在ObjectDataSource.Updating里再设一道卡,又根据另一些条件阻止更新,或者做一些其他操作。
    请问你自己在GridView.RowUpdating事件处理代码里硬编码,用Sql语句更新数据库时能有这么多可控性吗?所以我一直认为从asp.net 2.0开始,你不用DataSource控件(特别是三层模式应用时利用ObjectDataSource),实在是浪费,是心存偏见!
      

  2.   

    namhyuk挺推崇DataSource控件的嘛,我从不用,当然刚学的时候例外。