ObjectDataSource使用入门详解[视频]

这个控件说心理话,确实很强大,虽然我现在还只懂了点点怎么用!
可是他也确实不容易学,因为这开始我用了很多时间,一直不知道怎么入手,一直到昨天晚上我终于在MSDN上狠看一番,所以终于懂了最粗浅的用法,到此我得出一结论!

这玩意就是不容易入门,一旦知道怎么用了就容易进一步深入!所以把我学的做成视频,希望更多象我一样还徘徊在门外的朋友早点到房里坐下,毕竟现在好热哦!!

视频以及全部代码下载地址是 http://spacenet.supericp.com/thc/ObjectDataSource.rar 

闲话不说了,开工!!!

这个是我开始做的,因为我也  是昨天晚上熬夜的,所以还不是很熟练,呵呵!!先做了一次!

下面是代码片段,如果你看视频没看爽的话,可以直接看这里的片段

返回一个数据表
     string  connstring  =  ConfigurationManager.ConnectionStrings[ " two " ].ConnectionString;
    
// 上面这行不用说大家知道,是把数据库连接字符串拿出来,后面要用
     public  DataTable dt()
    
{//这个数据控件只能返回那几类,比如sqldataadapter,dataset,datatable还有个什么忘记了,呵呵,这里我们返回一个数据表给前面
        SqlConnection con = new SqlConnection(connstring);
        SqlDataAdapter sda 
= new SqlDataAdapter();
        sda.SelectCommand 
= new SqlCommand("SELECT * FROM [Categories] ORDER BY [CategoryID] DESC",con);//这里我们感觉SQL语句写起来很麻烦不是,所以我想到一个好办法,很简单的
        DataSet ds = new DataSet();
        sda.Fill(ds,
"thc");
        
return ds.Tables["thc"];

        
//到此,这个查询就算完成了,简单撒!!!
    }
返回一个SqlDataReader对象
public  SqlDataReader sdr( int  CategoryID)
    
{//一个SqlDataReader,这个不支持GridView分页和排序!!
        SqlConnection con = new SqlConnection(constring);
        SqlCommand cmd 
= new SqlCommand("SELECT * FROM [Categories] where [CategoryID]=@CategoryID ORDER BY [CategoryID] DESC", con);
        cmd.Parameters.AddWithValue(
"@CategoryID", CategoryID);
        con.Open();
        SqlDataReader sdr 
= cmd.ExecuteReader(CommandBehavior.CloseConnection);
        
return sdr;
    }
//更新动作
public   void  update( string  CategoryName, string  Description, int  CategoryID)
    
{//更新
        SqlConnection con = new SqlConnection(constring);
        SqlCommand cmd 
= new SqlCommand("UPDATE [Categories] SET [CategoryName] = @CategoryName, [Description] = @Description WHERE [CategoryID] = @CategoryID", con);
        con.Open();
        cmd.Parameters.AddWithValue(
"@CategoryName",CategoryName);
        cmd.Parameters.AddWithValue(
"@Description", Description);
        cmd.Parameters.AddWithValue(
"@CategoryID", CategoryID);
        cmd.ExecuteNonQuery();
    }
//删除动作
public   void  delete( int  CategoryID)
    

        SqlConnection con 
= new SqlConnection(constring);
        SqlCommand cmd 
= new SqlCommand("DELETE FROM [Categories] WHERE [CategoryID] = @CategoryID", con);
        con.Open();
        cmd.Parameters.AddWithValue(
"@CategoryID", CategoryID);
        cmd.ExecuteNonQuery();
    }
前台调用的代码
  < asp:ObjectDataSource  ID ="ObjectDataSource1"  runat ="server"  SelectMethod ="dt"
            TypeName
="objdb"  UpdateMethod ="update"  DeleteMethod ="delete" >
            
< UpdateParameters >
                
< asp:Parameter  Name ="CategoryName"  Type ="String"   />
                
< asp:Parameter  Name ="Description"  Type ="String"   />
                
< asp:Parameter  Name ="CategoryID"  Type ="Int32"   />
            
</ UpdateParameters >
            
< DeleteParameters >
                
< asp:Parameter  Name ="CategoryID"  Type ="Int32"   />
            
</ DeleteParameters >
        
</ asp:ObjectDataSource >
        
< br  />
        
< asp:GridView  ID ="GridView1"  runat ="server"  AllowPaging ="True"  AllowSorting ="True"
            DataSourceID
="ObjectDataSource1"  DataKeyNames ="CategoryID" >
            
< Columns >
                
< asp:CommandField  ShowEditButton ="True"  ShowDeleteButton ="True"   />
            
</ Columns >
        
</ asp:GridView >
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值