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

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

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Model
{
publicclass StuInfo
{
privatestring _id;

publicstring Id
{
get { return _id; }
set { _id = value; }
}
privatestring _stuname;

publicstring Stuname
{
get { return _stuname; }
set { _stuname = value; }
}
privatestring _stuclass;

publicstring 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)
{

returnnull;
}
finally
{
conn.Close();
}
}

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

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DAL;
using Model;

namespace BLL
{
publicclass 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;

publicpartialclass _Default : System.Web.UI.Page
{
StuDel de =new StuDel();
protectedvoid Page_Load(object sender, EventArgs e)
{

}
protectedvoid Button2_Click(object sender, EventArgs e)
{

GridView1.DataSource = de.date();
GridView1.DataBind();
}
}

 

asp.net三层架构 及其中使用泛型获取实体数据介绍的更多相关文章

  1. Asp.Net 三层架构之泛型应用

    一说到三层架构,我想大家都了解,这里就简单说下,Asp.Net三层架构一般包含:UI层.DAL层.BLL层,其中每层由Model实体类来传递,所以Model也算是三层架构之一了,例外为了数据库的迁移或 ...

  2. C#开发微信门户及应用(14)-在微信菜单中采用重定向获取用户数据

    我曾经在系列文章中的<C#开发微信门户及应用(11)--微信菜单的多种表现方式介绍>中介绍了微信菜单里面的重定向操作,通过这个重定向操作,我们可以获取一个code值,然后获取用户的open ...

  3. Oracle中使用游标获取指定数据表的所有字段名对应的字符串

    操作步骤:打开PLSQL Developer后,直接执行下面的语句就可以出来 --Oracle中使用游标获取指定数据表的所有字段名对应的字符串 declare mytablename VARCHAR( ...

  4. ASP.NET三层架构的分析

    BLL   是业务逻辑层   Business   Logic   Layer DAL   是数据访问层   Data   Access   Layer ASP.NET的三层架构(DAL,BLL,UI ...

  5. 新闻公布系统 (Asp.net 三层架构 )

    2012年度课程设计---新闻公布系统(小结)                                                                             ...

  6. ASP.NET三层架构项目创建流程

    1.进入VS2010,新建项目—>Visual C#—>Web—>ASP.NET空Web应用程序,如图所示: 2.在解决方案处右击—>新建项目—>Windows—> ...

  7. ASP.NET三层架构之不确定查询参数个数的查询

    在做三层架构的时候,特别是对表做查询的时候,有时候并不确定查询条件的个数,比如查询学生表:有可能只输入学号,或者姓名,或者性别,总之查询条件的参数个数并不确定,下面是我用List实现传值的代码: 附图 ...

  8. 初学者-asp.net三层架构

    一.概述: 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI).业务逻辑层(BLL).数据访问层(DAL).区分层次的目的即为了“高内聚,低耦合”的思想.是一种总体设计的思想. 1.表现层( ...

  9. Asp.net Core Startup Class中是如何获取配置信息的

    默认的网站构建方式 VS2015新建asp.net core项目,项目建立完成后,有两个文件,Program.cs和Startup.cs. public class Program { public ...

随机推荐

  1. WinformWPF 多线程访问控件【转】

    大家知道WPF中多线程访问UI控件时会提示UI线程的数据不能直接被其他线程访问或者修改,该怎样来做呢? 分下面两种情况 1.WinForm程序 )第一种方法,使用委托: private delegat ...

  2. ubuntu 14.04 配置tomacat8

    自己在虚拟机总安装tomcat8,主机访问,记下步骤方便以后查看. 1.将tomcat8安装包移动到/usr/local目录中(个人喜欢把自己安装的软件放到/usr/local文件夹中) 2.解压缩, ...

  3. javamail文件上传

    //创建entity package cn.bdqn.pojo; import java.io.File; public class Mail { private String from; priva ...

  4. 【51Nod 1244】莫比乌斯函数之和

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1244 模板题... 杜教筛和基于质因子分解的筛法都写了一下模板. 杜教筛 ...

  5. 纯css3图片旋转展示

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  6. .NET高性能框架Chloe.ORM-完美支持MySql

    扯淡 这是一款轻量.高效的.NET C#数据库访问框架(ORM).查询接口借鉴 Linq(但不支持 Linq).借助 lambda 表达式,可以完全用面向对象的方式就能轻松执行多表连接查询.分组查询. ...

  7. CSS3常用属性(边框、背景、文本效果、2D转换、3D转换、过渡、有过渡效果大图轮播、动画)

    CSS3边框: 1.CSS3圆角:border-radius  属性--创建边框线的圆角 <body style="font-size:24px; color:#60F;"& ...

  8. Android----消息弹出框

    关于Android的知识,自从工作了就没有什么时间去总结学习过的知识,我个人比较喜欢学习后总结,今天就写一下关于android中消息弹出框的几种方式的简单示例,按照自己的思路写了一段,希望对和我一样在 ...

  9. 递推 hdu 1330

    http://www.cnblogs.com/rainydays/archive/2013/01/16/2862235.html 看样例的答案 #include<stdio.h> #inc ...

  10. Rabbitmq集群升级方案

    升级Rabbitmq 3.6.3版本至3.6.6版本,升级过程中的一些关键步骤记录 Step 1: 顺序关闭集群所有节点,这里注意最后一个关闭的节点必须保证为硬盘节点,而非RAM节点: centOS ...