为AspxGridView绑定数据

15 篇文章 0 订阅
6 篇文章 1 订阅

为AspxGridView绑定数据

创建时间:2011年11月06日 21:13  阅读次数:(3092)
分享到: 1
我们可以通过给AspxGridView的DataSource属性或DataSourceID赋值来实现数据绑定。

所支持的数据源类型包括:SqlDataSource、ObjectDataSource、XmlDataSource、AccessDataSource、SiteMapDatasource、LinqDataSource。下面我们为每一种类型举一个示例:

1.使用DataSource属性绑定DataTable
static string _connectionstring = "数据库连接字符"
DataSet currentDs = new DataSet();
using (SqlConnection currentConn = new SqlConnection(_connectionstring))
{
    //获取数据
    currentConn.Open();
    SqlDataAdapter currentSda = new SqlDataAdapter("select row_number() over(order by LogID) as RowNumber,* from Sys_Log", currentConn);
    currentSda.Fill(currentDs, "Sys_Log");

    this.ASPxGridView1.DataSource = currentDs.Tables["Sys_Log"];
    this.ASPxGridView1.DataBind();

    currentConn.Close();
}


2.使用DataSourceID属性绑定SqlDataSource
<dxwgv:ASPxGridView ID="ASPxGridView1" runat="server" DataSourceID="SqlDataSource1" >
<Columns >
    <dxwgv:GridViewDataColumn Caption="LogID" FieldName="LogID" / >
    <dxwgv:GridViewDataColumn Caption="发生时间" FieldName="OCCDatetime" / >
    <dxwgv:GridViewDataColumn Caption="事件" FieldName="Event" / >
    <dxwgv:GridViewDataColumn Caption="类型" FieldName="Type" / >
    <dxwgv:GridViewDataColumn Caption="创建人" FieldName="Creator" / >
    <dxwgv:GridViewDataColumn Caption="创建日期" FieldName="CreateDate" / >
    <dxwgv:GridViewDataColumn Caption="备注" FieldName="Remark" / >            
</Columns >
</dxwgv:ASPxGridView >
<asp:SqlDataSource
  id="SqlDataSource1"
  runat="server"
  DataSourceMode="DataReader"
  ConnectionString="数据库连接字符"
  SelectCommand="select row_number() over(order by LogID) as RowNumber,* from Sys_Log" >
</asp:SqlDataSource >


3.使用DataSourceID属性绑定ObjectDataSource
<dxwgv:ASPxGridView ID="ASPxGridView1" runat="server" DataSourceID="ObjectDataSource1" >
<Columns >
    <dxwgv:GridViewDataColumn Caption="LogID" FieldName="LogID" / >
    <dxwgv:GridViewDataColumn Caption="发生时间" FieldName="OCCDatetime" / >
    <dxwgv:GridViewDataColumn Caption="事件" FieldName="Event" / >
    <dxwgv:GridViewDataColumn Caption="类型" FieldName="Type" / >
    <dxwgv:GridViewDataColumn Caption="创建人" FieldName="Creator" / >
    <dxwgv:GridViewDataColumn Caption="创建日期" FieldName="CreateDate" / >
    <dxwgv:GridViewDataColumn Caption="备注" FieldName="Remark" / >            
</Columns >
</dxwgv:ASPxGridView >
<asp:objectdatasource
  id="ObjectDataSource1"
  runat="server"
  selectmethod="GetAllLog"
  typename="AspxGridView.SysLogDAL" / >


其中SysLogDAL.cs代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Collections;

namespace AspxGridView
{
    public class SysLogDAL
    {
        static string _connectionstring = "数据库连接字符";
        public static ICollection GetAllLog()
        {
            ArrayList al = new ArrayList();
            DataSet currentDs = new DataSet();
            using (SqlConnection currentConn = new SqlConnection(_connectionstring))
            {
                //获取数据
                currentConn.Open();
                SqlDataAdapter currentSda = new SqlDataAdapter("select * from Sys_Log", currentConn);
                currentSda.Fill(currentDs, "Sys_Log");

                DataTable dt = currentDs.Tables["Sys_Log"];
                foreach (DataRow dr in dt.Rows)
                {
                    SysLogEntry e = new SysLogEntry();
                    e.LogID = Int32.Parse(dr["LogID"].ToString());
                    e.OCCDatetime = DateTime.Parse(dr["OCCDatetime"].ToString());
                    e.Event = dr["Event"].ToString();
                    e.Type = dr["Type"].ToString();
                    e.Creator = dr["Creator"].ToString();
                    e.CreateDate = DateTime.Parse(dr["CreateDate"].ToString());
                    e.Remark = dr["Remark"].ToString();
                    al.Add(e);
                }

                currentConn.Close();
            }
            return al;
        }
    }
}


其中SysLogEntry.cs代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace AspxGridView
{
    public class SysLogEntry
    {
        public int LogID
        {
            get;
            set;
        }
        public DateTime OCCDatetime
        {
            get;
            set;
        }
        public string Event
        {
            get;
            set;
        }
        public string Type
        {
            get;
            set;
        }
        public string Creator
        {
            get;
            set;
        }
        public DateTime CreateDate
        {
            get;
            set;
        }
        public string Remark
        {
            get;
            set;
        }
    }
}


4.使用DataSourceID属性绑定LinqDataSource
<dxwgv:ASPxGridView ID="ASPxGridView1" runat="server" DataSourceID="LinqDataSource1" >
<Columns >
    <dxwgv:GridViewDataColumn Caption="LogID" FieldName="LogID" / >
    <dxwgv:GridViewDataColumn Caption="发生时间" FieldName="OCCDatetime" / >
    <dxwgv:GridViewDataColumn Caption="事件" FieldName="Event" / >
    <dxwgv:GridViewDataColumn Caption="类型" FieldName="Type" / >
    <dxwgv:GridViewDataColumn Caption="创建人" FieldName="Creator" / >
    <dxwgv:GridViewDataColumn Caption="创建日期" FieldName="CreateDate" / >
    <dxwgv:GridViewDataColumn Caption="备注" FieldName="Remark" / >            
</Columns >
</dxwgv:ASPxGridView >
<asp:LinqDataSource ID="LinqDataSource1" runat="server" 
    ContextTypeName="AspxGridView.SysLogDAL" TableName="SysLogEntrys" >
</asp:LinqDataSource >

其中AspxGridView.SysLogDAL有一个SysLogEntrys的属性,代码如下(其它代码同例3)
public ICollection SysLogEntrys
{
    get
    {
        return this.GetAllLog(); ;
    }
}


5.使用DataSourceID属性绑定XmlDataSource
<dxwgv:ASPxGridView ID="ASPxGridView1" runat="server" DataSourceID="XmlDataSource1" >
<Columns >
    <dxwgv:GridViewDataColumn Caption="LogID" FieldName="LogID" / >
    <dxwgv:GridViewDataColumn Caption="发生时间" FieldName="OCCDatetime" / >
    <dxwgv:GridViewDataColumn Caption="事件" FieldName="Event" / >
    <dxwgv:GridViewDataColumn Caption="类型" FieldName="Type" / >
    <dxwgv:GridViewDataColumn Caption="创建人" FieldName="Creator" / >
    <dxwgv:GridViewDataColumn Caption="创建日期" FieldName="CreateDate" / >
    <dxwgv:GridViewDataColumn Caption="备注" FieldName="Remark" / >            
</Columns >
</dxwgv:ASPxGridView >
<asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/Sys_Log.xml" ></asp:XmlDataSource >


其中Sys_Log.xml文件内容如下
<?xml version='1.0' encoding='gb2312'? >
<data >
<row LogID="1" OCCDatetime="2010-06-09 10:10:11.083" Event="用户【Wyf】登陆系统" Type="登陆信息" Creator="sa" CreateDate="2010-10-21 11:23:08.090" Remark="" / >
</data >
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值