现在的位置: 首页 > 综合 > 正文

在ASP.NET三层架构中使用泛型获取实体数据

2013年10月09日 ⁄ 综合 ⁄ 共 1740字 ⁄ 字号 评论关闭

ASP.NET中使用泛型获取实体数据可以发挥更高的效率,代码简洁方便,本例采用三层架构。首先在model层中定义StuInfo实体,然后在
DAL层的SQLHelper数据操作类中定义list<>泛型查询数据库获取实体数据,最后通过BLL层的方法调用出来。具体实例如下:

一、model层中定义的StuInfo实体:

using
System
;

using
System.Collections.Generic
;

using
System.Linq
;

using
System.Text
;

namespace
Model

{

public
class
StuInfo

{

private
string
_id;

public
string
Id

{

get
{
return
_id
; }

set
{
_id =
value;
}

}

private
string
_stuname;

public
string
Stuname

{

get
{
return
_stuname
; }

set
{
_stuname
=
value;
}

}

private
string
_stuclass;

public
string
Stuclass

{

get
{
return
_stuclass
; }

set
{
_stuclass
=
value;
}

}

}

}

二、DAL层中通过list泛型获取实体数据:

public
List
<StuInfo>
date()

{

List<StuInfo>
list =
null
;

cmd =
new
SqlCommand("select * from stuinfo",
conn);

try

{

conn.Open();

dr =
cmd
.ExecuteReader();

list =
new
List<StuInfo>();

while (dr.Read())

{

StuInfo stu
=
new
StuInfo();

stu.Id
= dr["id"].ToString();

stu.Stuname
= dr["stuname"].ToString();

stu.Stuclass
= dr["stuclass"].ToString();

list.Add(stu);

}

return
list
;

}

catch (Exception)

{

return
null
;

}

finally

{

conn.Close();

}

}

三、在BLL层中调用DAL层的方法获取实体数据:

using
System
;

using
System.Collections.Generic
;

using
System.Linq
;

using
System.Text
;

using
DAL
;

using
Model
;

namespace
BLL

{

public
class
StuDel

{

SQLHelper db
=
new
SQLHelper();

public
List
<StuInfo>
date()

{

return
db
.date();

}

}

}

四、在web UI层中显示实体数据经过第三步,实体数据已经添加到list泛型集合中了,那么如何显示出来呢?可以在页面上添加数据显示控件,如GridView,然后在cs代码中给它指定一个数据源,这个list泛型集合就可以作为它的数据源,让它显示数据。

using
System
;

using
System.Configuration
;

using
System.Data
;

using
System.Linq
;

using
System.Web
;

using
System.Web.Security
;

using
System.Web.UI
;

using
System.Web.UI.HtmlControls
;

using
System.Web.UI.WebControls
;

using
System.Web.UI.WebControls.WebParts
;

using
System.Xml.Linq
;

using
BLL
;

public
partial
class
_Default
:
System
.Web.UI.Page

{

StuDel de
=
new
StuDel();

protected
void
Page_Load(object
sender,
EventArgs
e)

{

}

protected
void
Button2_Click(object
sender,
EventArgs
e)

{

GridView1.DataSource
= de.date();

GridView1.DataBind();

}

}

抱歉!评论已关闭.