欧美日韩精品在线,国内精品久久久久久久久,一级毛片恃级毛片直播,清纯唯美亚洲综合欧美色

依賴注入機(jī)制及IoC的設(shè)計(jì)與實(shí)現(xiàn)(2)_.Net教程

編輯Tag賺U幣
教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!

推薦:近期的幾個(gè)ASP.NET開發(fā)經(jīng)驗(yàn)總結(jié)和收集
一:頁(yè)面中Page_Load事件 和 Page.IsPostBack執(zhí)行兩次的原因. 原因一: 當(dāng)<%@Page....中沒(méi)有AutoEventWireup定義時(shí)會(huì)導(dǎo)致Page_Load執(zhí)行兩次,如果有定義,且值為true時(shí),在IsPostBack中動(dòng)態(tài)

實(shí)現(xiàn)工廠

下面使用兩個(gè)輔助類,實(shí)現(xiàn)數(shù)據(jù)訪問(wèn)層工廠和業(yè)務(wù)邏輯層工廠。

using System;
using NGuestBook.IDAL;

namespace NGuestBook.Factory
{
/**//// <summary>
/// 數(shù)據(jù)訪問(wèn)層工廠,用于獲取相應(yīng)的數(shù)據(jù)訪問(wèn)層對(duì)象
/// 使用Abstract Factory設(shè)計(jì)模式 Facace設(shè)計(jì)模式 反射機(jī)制 緩存機(jī)制設(shè)計(jì)
/// </summary>
public sealed class DALFactory
{
/**//// <summary>
/// 獲取管理員數(shù)據(jù)訪問(wèn)層對(duì)象
/// </summary>
/// <returns>管理員數(shù)據(jù)訪問(wèn)層對(duì)象</returns>
public static IAdminDAL CreateAdminDAL()
{
return (IAdminDAL)DependencyInjector.GetDALObject("AdminDAL");
}

/**//// <summary>
/// 獲取留言數(shù)據(jù)訪問(wèn)層對(duì)象
/// </summary>
/// <returns>留言數(shù)據(jù)訪問(wèn)層對(duì)象</returns>
public static IMessageDAL CreateMessageDAL()
{
return (IMessageDAL)DependencyInjector.GetDALObject("MessageDAL");
}

/**//// <summary>
/// 獲取評(píng)論數(shù)據(jù)訪問(wèn)層對(duì)象
/// </summary>
/// <returns>評(píng)論數(shù)據(jù)訪問(wèn)層對(duì)象</returns>
public static ICommentDAL CreateCommentDAL()
{
return (ICommentDAL)DependencyInjector.GetDALObject("CommentDAL");
}
}
}

using System;
using NGuestBook.IBLL;

namespace NGuestBook.Factory
{
/**//// <summary>
/// 業(yè)務(wù)邏輯層工廠,用于獲取相應(yīng)的業(yè)務(wù)邏輯層對(duì)象
/// 使用Abstract Factory設(shè)計(jì)模式 Facace設(shè)計(jì)模式 反射機(jī)制 緩存機(jī)制設(shè)計(jì)
/// </summary>
public sealed class BLLFactory
{
/**//// <summary>
/// 獲取管理員業(yè)務(wù)邏輯層對(duì)象
/// </summary>
/// <returns>管理員業(yè)務(wù)邏輯層對(duì)象</returns>
public static IAdminBLL CreateAdminBLL()
{
return (IAdminBLL)DependencyInjector.GetBLLObject("AdminBLL");
}

/**//// <summary>
/// 獲取留言業(yè)務(wù)邏輯層對(duì)象
/// </summary>
/// <returns>留言業(yè)務(wù)邏輯層對(duì)象</returns>
public static IMessageBLL CreateMessageBLL()
{
return (IMessageBLL)DependencyInjector.GetBLLObject("MessageBLL");
}

/**//// <summary>
/// 獲取評(píng)論業(yè)務(wù)邏輯層對(duì)象
/// </summary>
/// <returns>評(píng)論業(yè)務(wù)邏輯層對(duì)象</returns>
public static ICommentBLL CreateCommentBLL()
{
return (ICommentBLL)DependencyInjector.GetBLLObject("CommentBLL");
}
}
}

分享:.NET平臺(tái)依賴注入機(jī)制及IoC的設(shè)計(jì)與實(shí)現(xiàn)
我們?cè)O(shè)計(jì)的分層架構(gòu),層與層之間應(yīng)該是松散耦合的。因?yàn)槭菃蜗騿我徽{(diào)用,所以,這里的“松散耦合”實(shí)際是指上層類不能具體依賴于下層類,而應(yīng)該依賴于下層提供的一個(gè)接口。這樣,上層

共2頁(yè)上一頁(yè)12下一頁(yè)
來(lái)源:模板無(wú)憂//所屬分類:.Net教程/更新時(shí)間:2008-08-22
相關(guān).Net教程