作者liunate (i miss you)
看板C_Sharp
标题Re: [问题] ASP.NET的sqlDataSource无法删除资料
时间Sat Apr 8 21:12:53 2006
※ 引述《mygod1220 (晴天)》之铭言:
: [删除的按钮按下]
: protected void DelAlbum(object sender, System.EventArgs e)
: {
: SqlDataSource1.Delete();
: }
首先, 你要求SqlDataSource1执行删除的动作
: <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString=
: "<%$ ConnectionStrings:ClubsiteDB %>"
: DeleteCommand="DELETE from Albums WHERE albumid=@albumid"
再来, SqlDataSource1根据他有的DeleteCommand得知要执行的是
"DELETE from Albums WHERE albumid=@albumid"
注意这边有个@albumid在里面, 这代表在执行Delete的时候, 会需要一个DeleteParameter
: <DeleteParameters>
: <asp:QueryStringParameter Name="albumid" QueryStringField="AlbumID" />
: </DeleteParameters>
这边是你的DeleteParameters集合, 会包含你要执行DELETE时所需要的一切参数
这边你将唯一需要的一个Parameter设定为QueryStringParameter, 代表需要取得这个
Parameter的时候会从网址列的QueryString取得, 但是你应该没有指定QueryString中
AlbumId这个栏位吧? :]
之所以不会出错的原因 应该也是在於这个QueryStringParameter预设将Null设定为不
执行动作(请参考SqlDataSource属性中, 关於DeleteParameters集合)
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.67.110.17
1F:→ mygod1220:我有写QueryStringField="AlbumID",还是说这样写不够?? 04/09 00:13
2F:推 mygod1220:刚用asp...对这个语法实在是不太熟悉......... 04/09 00:16