此页面上的内容需要较新版本的 Adobe Flash Player。

获取 Adobe Flash Player

您现在的位置: 智可网 - 程序开发 - 微软开发专区 - Visual Studio - 正文
用VS2005.NET进行三层结构应用程序的开发(2)
教程录入:欧敏婷    责任编辑:gdzqgn 作者:佚名 文章来源:51CTO.COM

三、Business的具体实现

建立名为Base的类,此类作为其他事务类的基类,其中定义了一个DataAgent的实例。其他所有的Business类都从该改类派生。

在该类中添加对DataAgent的引用,使所有的事务类都能使用DataAgent中的方法。

Base.cs源代码:

public abstract class Base
{
#region DataAgent
private DataAgent m_objDBAgent;
protected DataAgent OleDBAgent
{
get
{
if(this.m_objDBAgent == null)
{
this.m_objDBAgent = this.CreateAgent();
}
return this.m_objDBAgent;
}

set
{
this.m_objDBAgent = value;
}
}

#endregion DataAgent
public Base()
{
}

#region CreateAgent
///


/// Create a new DataAgent
///
/// the DataAgent

private DataAgent CreateAgent()
{
string strConnection =

ConfigurationSettings.APPSettings["ConnectionString"];
return new DataAgent(strConnection);
}
#endregion CreateAgent
}

准备好了数据操作层和事务层的基类,底下就可以正式地开始业务逻辑类的开发了,如有一个显示新闻的类News,其中包含了一个GetNewsLsit()的方法,该方法用来获取所有的新闻标题列表,代码如下:

public class News: Base
{
public News Contact()
{
}

public DataVIEw GetNewsList()
{
string strSql;
strSql = "";
strSql += " SELECT Top 10 NewsId,NewsTitle ";
strSql += " FROM Tb_News";
strSql += " WHERE NewsEnable = 1";
strSql += " ORDER BY NewsId ";

return base.OleDBAgent.GetDataVIEw(strSql);
}
}

由于数据库结构比较简单,在此就不再给出详细的表结构。

四、UI层对Business中接口的调用

首先,在页面中添加对News类的引用。

然后,在页面中添加一个(DataGrid)dgNews用来显示新闻列表。

在Page Behind的Page_Load方法中添加如下代码:

      News objNews = new News();
this.dgNews.DataSource = objNews.GetNewsList();
this.dgNews.DataBind();

至此,大功告成!

分享
打赏我
打开支付宝"扫一扫" 打开微信"扫一扫"
客户端
"扫一扫"下载智可网App
意见反馈
用VS2005.NET进行三层结构应用程序的开发(2)
作者:佚名 来源:51CTO.COM

三、Business的具体实现

建立名为Base的类,此类作为其他事务类的基类,其中定义了一个DataAgent的实例。其他所有的Business类都从该改类派生。

在该类中添加对DataAgent的引用,使所有的事务类都能使用DataAgent中的方法。

Base.cs源代码:

public abstract class Base
{
#region DataAgent
private DataAgent m_objDBAgent;
protected DataAgent OleDBAgent
{
get
{
if(this.m_objDBAgent == null)
{
this.m_objDBAgent = this.CreateAgent();
}
return this.m_objDBAgent;
}

set
{
this.m_objDBAgent = value;
}
}

#endregion DataAgent
public Base()
{
}

#region CreateAgent
///


/// Create a new DataAgent
///
/// the DataAgent

private DataAgent CreateAgent()
{
string strConnection =

ConfigurationSettings.APPSettings["ConnectionString"];
return new DataAgent(strConnection);
}
#endregion CreateAgent
}

准备好了数据操作层和事务层的基类,底下就可以正式地开始业务逻辑类的开发了,如有一个显示新闻的类News,其中包含了一个GetNewsLsit()的方法,该方法用来获取所有的新闻标题列表,代码如下:

public class News: Base
{
public News Contact()
{
}

public DataVIEw GetNewsList()
{
string strSql;
strSql = "";
strSql += " SELECT Top 10 NewsId,NewsTitle ";
strSql += " FROM Tb_News";
strSql += " WHERE NewsEnable = 1";
strSql += " ORDER BY NewsId ";

return base.OleDBAgent.GetDataVIEw(strSql);
}
}

由于数据库结构比较简单,在此就不再给出详细的表结构。

四、UI层对Business中接口的调用

首先,在页面中添加对News类的引用。

然后,在页面中添加一个(DataGrid)dgNews用来显示新闻列表。

在Page Behind的Page_Load方法中添加如下代码:

      News objNews = new News();
this.dgNews.DataSource = objNews.GetNewsList();
this.dgNews.DataBind();

至此,大功告成!