asp.net IList查询数据后格式化数据再绑定控件

来源:爱站网时间:2020-05-05编辑:网友分享
我们都知道asp.net中的数据库都是抽象类定义的,而asp.net IList查询数据后格式化数据再绑定控件应该怎么实现呢?今天本文是送给初学者的知识,现在随着爱站技术频道简单了解一下吧!

我们都知道asp.net中的数据库都是抽象类定义的,而asp.net IList查询数据后格式化数据再绑定控件应该怎么实现呢?今天本文是送给初学者的知识,现在随着爱站技术频道简单了解一下吧!

一、先讲最基本的 DataSet绑定操作,GridView为例。
当操作查询得一个 DataSet ds 后,可以进行一些数据的格式化,如:

复制代码 代码如下:

foreach (DataRow dr in ds.Tables[0].Rows)
{
if (dr["Depth"].ToString() != "1")
{
dr["ColumnName"] = StringHelper.StringOfChar(Convert.ToInt32(dr["Depth"]) - 1, " ") + "├ " + dr["ColumnName"];
}
}
GridView1.DataSource = ds;
GridView1.DataBind();

 

 


/// 生成指定长度的字符串,即生成strLong个str字符串
///


///生成的长度
///以str生成字符串
///
public static string StringOfChar(int strLong, string str)
{
string ReturnStr = "";
for (int i = 0; i {
ReturnStr += str;
}
return ReturnStr;
}
///


/// 生成日期随机码
///


///
public static string GetRamCode()
{
#region
return DateTime.Now.ToString("yyyyMMddHHmmssffff");
#endregion
}
}

 

 


像这样很快就能进行一些数据的格式化并绑定到控件了。
二、现在讲下我主要想讲的内容,如果我们用Ilist 查询得数据后,想格式化一些字符串,以达到自己想要的显示效果,我们该怎么办呢?先看下效果图再给您答案。

 

 

 

 

 
比如我们在做无限分类的时候 往往想让数据如上图所显示,我们又该怎么做呢。
刚上让面的DataSet写了些格式化代码,现在相信大家都想知道Ilist又该怎么操作对吧?
泛型的功能 强大我在这里就不说了,现在说重点,主要有两种方法实现,
一,把Ilist得的数据转为 DataSet的,这样你又可以重新回到熟悉的操作了
IList 转 DataSet 类(这个是我引用别人的 ^ ^)

 

 

复制代码 代码如下:

 


public static DataSet ConvertToDataSet(IList list)
{
if (list == null || list.Count {
return null;
}
DataSet ds = new DataSet();
DataTable dt = new DataTable(typeof(T).Name);
DataColumn column;
DataRow row;
System.Reflection.PropertyInfo[] myPropertyInfo = typeof(T).GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance);
foreach (T t in list)
{
if (t == null)
{
continue;
}
row = dt.NewRow();
for (int i = 0, j = myPropertyInfo.Length; i {
System.Reflection.PropertyInfo pi = myPropertyInfo[i];
string name = pi.Name;
if (dt.Columns[name] == null)
{
column = new DataColumn(name, pi.PropertyType);
dt.Columns.Add(column);
}
row[name] = pi.GetValue(t, null);
}
dt.Rows.Add(row);
}
ds.Tables.Add(dt);
return ds;
}

 


然后

 

 

 

复制代码 代码如下:

 

 

 


DataSet ds = ConvertToDataSet(b.ListColumn());

 


看,又回来熟悉的操作了吧,但是,这样做我们启不是走弯路了,为啥不直接用 DataSet就得了?没错,我们走弯路了............我想用 IList啊,不想转来转去的,难道就没有好的办法?
哈哈,答案肯定是有的,也是最简单的,往往是初学的朋友不懂解IList才现在种种疑惑,
现在讲IList 对象类的操作
还是上面的例子
比如当查询得一个

 

 

 

复制代码 代码如下:

 

 

 


BLL b = new BLL();
b.ListColumn();

 


我们要绑定上图所示的只需这样做

 

 

 

 

 

 

 

 

 

 

 


StringHelper还是上面的那个。经过这样的简单处理,我们就可以格式化 栏目名称了再分下DataList的绑定效果图,完毕!算是菜鸟与菜鸟之间的交流吧。

 

以上就是爱站技术频道给大家介绍的asp.net IList查询数据后格式化数据再绑定控件,看完本文的介绍后大家是否有兴趣学习呢?可以自己在家试着操作一下。

上一篇:asp.net DoDragDrop的使用方法

下一篇:asp.net sql存储过程

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载