浏览器大全:是一个提供流行浏览器教程、在线学习分享的学习平台!

也谈绑定dropdownlist(3)

在前面的文章里,讲了些方法,如果大家仔细体会的其实都还是老的一套方法,根本没有体现面向对象过程编程的思想。并且前面2篇文章的那种方法,代码的重复利用率不高。

我们可以把DDLItem表给对象化,把表里的字段当作其属性,我先创建个对象类,类名为DDLItemInfo,代码如下所示:

using System;



namespace BindDropDownList

{

/// <summary>

/// 主要是把DDLItem表对象化,

/// 把表的字段变为属性,可以任意的

/// 获取或设置该属性的值。

/// </summary>

public class DDLItemInfo

{

//定义内部变量

private int _id;

private string _ItemName;



//定义2重构造函数

public DDLItemInfo(){}



public DDLItemInfo( int id, string ItemName )

{

_id = id;

_ItemName = ItemName;

}



//定义成员的方法

public int id

{

get

{

return _id;

}

set

{

_id = value;

}

}



public string ItemName

{

get

{

return _ItemName;

}

set

{

_ItemName = value;

}

}

}

}

然后创建为该表使用的方法的类库,类名DDLItem.cs,代码如下所示:

using System;

using System.Collections;

using System.Data;

using System.Data.SqlClient;



namespace BindDropDownList

{

/// <summary>

/// 对DDLItem 表的各种SQL操作。

/// </summary>

public class DDLItem

{

public DDLItem(){}



//定义数据库连接字串

private const string SQL_CONN_STRING = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];



//定义SQL语句

private const string SQL_SELECT_DDLIIEMS = "select id, ItemName from DDLItem order by id desc";



//构造一个方法来读取所有的DDLItem表里的记录

public IList Get_DDLItems()

{

//实例化一个可动态增加长度的数组

IList itemList = new ArrayList();

//定义数据库连接

SqlConnection myConn = new SqlConnection( SQL_CONN_STRING );

//定义SQL命令

SqlCommand myCommand = new SqlCommand( SQL_SELECT_DDLIIEMS, myConn );

//打开数据库

myCommand.Connection.Open();

//定义一个SqlDataReader

SqlDataReader rdr = myCommand.ExecuteReader();

//开始循环读取记录

while( rdr.Read() )

{

//构造一个实例化的DDLItem表对象

DDLItemInfo itemInfo = new DDLItemInfo(

rdr.IsDBNull( 0 ) ? 0 : rdr.GetInt32( 0 ),

rdr.IsDBNull( 1 ) ? string.Empty : rdr.GetString( 1 )

);

itemList.Add( itemInfo );

}

//关闭SqlDataReader和SqlConnection

rdr.Close();

myCommand.Connection.Close();



return itemList;

}



}

}



上面就把我们要操作的方法都定义好了,下面就是怎么调用的问题了,再创建一个Aspx的页面,代码如下所示:

using System;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Web;

using System.Web.SessionState;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.HtmlControls;



namespace BindDropDownList

{

/// <summary>

/// Example3 的摘要说明。

/// </summary>

public class Example3 : System.Web.UI.Page

{

protected System.Web.UI.WebControls.DropDownList DropDownList1;

protected System.Web.UI.WebControls.Button Button1;



private void Page_Load(object sender, System.EventArgs e)

{

// 在此处放置用户代码以初始化页面

}



#region Web Form Designer generated code

override protected void OnInit(EventArgs e)

{

//

// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。

//

InitializeComponent();

base.OnInit(e);

}



/// <summary>

/// 设计器支持所需的方法 - 不要使用代码编辑器修改

/// 此方法的内容。

/// </summary>

private void InitializeComponent()

{

this.Button1.Click += new System.EventHandler(this.Button1_Click);

this.Load += new System.EventHandler(this.Page_Load);



}

#endregion



private void Button1_Click(object sender, System.EventArgs e)

{

//使用DDLItem类的Get_DDLItems方法,取得记录

IList list = new DDLItem().Get_DDLItems();

//判断有没有记录

if( list.Count != 0 )

{

//把记录加到DropDownList1上

for( int i = 0 ; i < list.Count; i++ )

{

DDLItemInfo itemInfo = ( DDLItemInfo )list[i];

DropDownList1.Items.Add( new ListItem( itemInfo.ItemName, itemInfo.id ) );

}

}



}

}

}



这个话,我们在以后管理DDLItem内容时,直接调用Get_DDLItems这个方法就可以列出所有的DDLItem信息,并且一次开发完毕后,对于DDLItem表的结构,通过DDLItemInfo类的属性就能一清二楚的知道,这样也提高效率。





相关软件

2345加速浏览器官方版

2345加速浏览器官方版 | 56.2MB

2345加速浏览器官方版

新一代2345加速浏览器采用Chromium和IE双内核,主打极速与安全特性。基于Chromium深度定制,引入网页智能预加载技术,访问网页更快速..

QQ浏览器官方正式版

QQ浏览器官方正式版 | 49.67MB

QQ浏览器官方正式版

QQ浏览器秉承TT浏览器1-4系列方便易用的特点,但技术架构不同,交互和视觉表现也重新设计,采用Chromium内核+IE双内核,让浏览快速稳定...

百度浏览器最新版下载

百度浏览器最新版下载 | 13.3MB

百度浏览器最新版下载

q百度浏览器,是一款简洁轻快、智能懂你的浏览器。依靠百度强大的搜索平台,在满足用户浏览网页的基础上,它整合百度体系业务优势,带给用户更方便的浏览方式功能...

UC浏览器官方正式版

UC浏览器官方正式版 | 44.2MB

UC浏览器官方正式版

UC浏览器(UC Browser)是UC Mobile Limited在2004年8月开发的一款软件,分uc手机浏览器和uc浏览器电脑版。UC浏览器是全球使用量最大的第三方手机浏览器...

猎豹浏览器2022最新版下载

猎豹浏览器2022下载 | 45MB

猎豹浏览器2022最新版下载

猎豹安全浏览器对Chrome的Webkit内核进行了超过100项的技术优化,访问网页速度更快。其具有首创的智能切换引擎,动态选择内核匹配不同网页...

360安全浏览器官方版下载

360安全浏览器下载 | 21.4MB

360安全浏览器官方版下载

360安全浏览器拥有全国最大的恶意网址库,采用恶意网址拦截技术,可自动拦截挂马、欺诈、网银仿冒等恶意网址。独创沙箱技术,在隔离模式即使访问****也不会感染...