您的位置:首页 > 其它

通过实例了解抽象工厂(二)数据层

2007-05-08 21:14 471 查看
数据层SQLServerDAL相对简单,只需要继承Factory并实现里面的抽象方法就ok了
添加数据层类库SQLServerDAL,添加类SQLServerDAL



还是以上一章节为例,源代码

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using Components;

namespace SQLServerDAL
{
public class SQLServerDAL:Factory //继承数据抽象工厂类
{
private string connectionString = "";
public string ConnectionString
{
get { return connectionString; }
set { connectionString = value; }
}
//返回Connection实例
public SqlConnection GetSqlConnection()
{
try
{
return new SqlConnection(ConnectionString);
}
catch
{
throw new Exception("数据库连接字符串无效");
}
}

public SQLServerDAL()
{
//获取Web.Config里设置的连接字符串
this.ConnectionString = ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString;
}

//实现工厂方法中的抽象方法,返回范型新闻实体对象即新闻列表。
public override List<News> GetNews()
{
using (SqlConnection Con = GetSqlConnection())
{
SqlCommand Com = new SqlCommand("GetNews",Con);
Com.CommandType = CommandType.StoredProcedure;

Con.Open();
SqlDataReader dr = Com.ExecuteReader(CommandBehavior.CloseConnection);
List<News> news = new List<News>();
while (dr.Read())
news.Add(NewsIDataReader(dr));//Factory工厂方法中数据抽取器的调用
Con.Close();
return news;
}
}
}
}

数据层出来我想Factory类也不再神秘了。我们下面该做用户界面了 (显示层)

添加Web项目,添加Default.ASPx



在Default.ASPx中添加GridView---添加ObjectDataSource---将ObjectDataSource对象数据源绑定到GridView控件



配置ObjectDataSource对象数据源,选择业务逻辑对象Components.NewsS



点击下一步在Select选项卡中选择方法GetNews()



完成,启动调试



下载源代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: