SqlDataSource WEB控件:当DeleteCommandType=”storedProcedure”时「建议收藏」

SqlDataSource WEB控件:当DeleteCommandType=”storedProcedure”时「建议收藏」设计Users表:UserID,NameArticles表:ArticleID,UserID,ArticleTitle生成视图:SELECT     dbo.Articles.ArticleID, dbo.Articles.ArticleTitle, dbo.Users.NameFROM         dbo.Articles INNER JOIN                      db…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

设计

Users表:UserID,Name

Articles表:ArticleID,UserID,ArticleTitle

生成视图:

SELECT
     dbo.Articles.ArticleID, dbo.Articles.ArticleTitle, dbo.Users.Name

FROM
         dbo.Articles 
INNER
 
JOIN

                      dbo.Users 

ON
 dbo.Articles.UserID 
=
 dbo.Users.UserID

写一条执行删除的StoredProcedure:

CREATE
 
PROCEDURE
 dbo.DeleteArticle 

@a
 
int


AS

    

delete
 
from
 Articles 
where
 ArticleID 
=
 
@a

    

RETURN

在aspx页面上,增加GridView,并指定数据源SqlDataSource

通过向导生成的SqlDataSource1:
    <asp:SqlDataSource ID=”SqlDataSource1″ runat=”server”
    ConnectionString=”<%$ ConnectionStrings:DataTesterConnectionString %>”
     SelectCommand=”SELECT * FROM [ViewArticles]”
      DeleteCommand=”DeleteArticle”
    DeleteCommandType=”StoredProcedure”>
        <DeleteParameters>
            <asp:Parameter Name=”a” Type=”Int32″ />
        </DeleteParameters>
    </asp:SqlDataSource>

通过向导生成的GridView1,并增加删除按钮列:
    <asp:GridView ID=”GridView1″ runat=”server” DataSourceID=”SqlDataSource1″>
        <Columns>
            <asp:CommandField ShowDeleteButton=”True” />
        </Columns>
    </asp:GridView>

如MSDN所述:为了使 GridView 控件的自动更新和删除功能工作,必须设置 DataKeyNames 属性。
加入ArticleID作为主键
    <asp:GridView ID=”GridView1″ runat=”server” DataSourceID=”SqlDataSource1″ DataKeyNames=”ArticleID”>
        <Columns>
            <asp:CommandField ShowDeleteButton=”True” />
        </Columns>
    </asp:GridView>

F5,执行了一下,”为过程或函数 DeleteArticle 指定的参数太多。

靠,就一个参数也不对?
利用cs编码有很多种方法实现这一过程,现在就较上劲了就不想写代码,怎么办?
在接下来的N久时间里,我无数次的试验,终于这样搞定了:

    
<
asp:SqlDataSource 
ID
=”SqlDataSource1″
 runat
=”server”
 
    ConnectionString

=”<%$ ConnectionStrings:DataTesterConnectionString %>”

     SelectCommand

=”SELECT * FROM [ViewArticles]”

      OldValuesParameterFormatString

=”a”

      DeleteCommand

=”DeleteArtile”

    DeleteCommandType

=”StoredProcedure”
>

        

<
DeleteParameters
>

            

<
asp:Parameter 
Name
=”a”
 Type
=”Int32″
 
/>

        

</
DeleteParameters
>

    

</
asp:SqlDataSource
>

关键是OldValuesParameterFormatString=”a”这句!

或者干脆把
        <DeleteParameters>
            <asp:Parameter Name=”a” Type=”Int32″ />
        </DeleteParameters>
这些都去掉,照样能很好的工作!

在网上找了N久都没有找到解决办法,希望对有同样问题的人有些用处。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/164511.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 偶遇年薪30w大数据学习路线,努力追求一下。

    偶遇年薪30w大数据学习路线,努力追求一下。

    2021年9月16日
    50
  • K8s认证_ce安全认证是什么意思

    K8s认证_ce安全认证是什么意思k8s访问控制概述Role只能对命名空间的资源进行授权,需要指定namespaceClusterRole可以对集群范围内的资源、跨namespace的范围资源、非资源类型进行授权RoleBinding可以将同一namespace中的subject对象绑定到某个Role下,则此Subject具有该Role定义的权限ClusterRoleBinding在整个集群级别和所有namespaces将特定的subject与ClusterRole绑定,授予权限虽然authorization-clusterrole是一个集

    2022年8月9日
    2
  • 基于Deep Learning 的视频识别技术「建议收藏」

    基于Deep Learning 的视频识别技术「建议收藏」深度学习在最近十来年特别火,几乎是带动AI浪潮的最大贡献者。互联网视频在最近几年也特别火,短视频、视频直播等各种新型UGC模式牢牢抓住了用户的消费心里,成为互联网吸金的又一利器。当这两个火碰在一起,会产生什么样的化学反应呢?不说具体的技术,先上一张福利图,该图展示了机器对一个视频的认知效果。其总红色的字表示objects,蓝色的字表示scen…

    2022年5月27日
    25
  • android传感器开发与智能设备案例实战_传感器的选择

    android传感器开发与智能设备案例实战_传感器的选择对于android应用开发来说,开发传感器应用十分简单,开发者只要为指定监听器注册

    2022年9月29日
    0
  • java缓存处理_清理java缓存

    java缓存处理_清理java缓存 java缓存技术一(转)看一粒沙中的世界,一朵野花中的天堂。把无限握于掌中,把永恒握于瞬间。——威廉•布莱克开始讨论缓存之前,让我们先来讨论讨论另外一个问题:理论和实践.从ahuaxuan接触的程序员来看,有的程序员偏实践,有的程序员偏理论,但是这都是不好的行为,理论和实践同样重要,我们在做很多核心的算法的时候,没有理论根本无从下手,而在我们多年的实践中,不

    2022年9月1日
    1
  • 锂电池3V升12V(AH6901)低成本替代6291升压芯片

    锂电池3V升12V(AH6901)低成本替代6291升压芯片锂电池3V升12V(AH6901)低成本替代6291升压芯片应用于数码相机,移动电源,蓝牙音箱,插卡音箱、LED台灯便捷DVD,MID,移动电话等数码产品AH6901是一款小封装(SOT23-6)、CC(恒流)模式的PWM升压IC,适用于锂电池(3~4.2V)输出5V,1A的移动电源应用。AH6901输入电压范围可由最低2.6伏特到最高6伏特,输出电压3.3–20V可调整且内部MOS输出开关电流可高达2A,封装为SOT23-6,工作频率为1MHZ,可以搭配3.3uh小型贴片电感,减少成品体积,非常适

    2022年10月6日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号