欧美特黄不卡,涩涩视频在线,成人国产精品一区二区网站,亚洲一区二区三区欧美

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

實戰 .Net 數據訪問層 - 15

實戰 .Net 數據訪問層 - 15

更新時間:2020-01-14 文章作者:未知 信息來源:網絡 閱讀次數:

上面的示意圖中,步驟7指向的Remoting Server就是Host程序,

而Remoting Server包裹著的RemoteCustomer就是真正提供服務的數

據操作類。

以下所列代碼即為該類的部分實現:



代碼13:使用Data Access Logic進行Remoting調用 – 3,RemoteCustomer



public class RemoteCustomer: MarshalByRefObject

{

public RemoteCustomer() { }



public ArrayList GetAllCustomers()

{

SqlConnection conn = new SqlConnection(

Helper.GetApplicationSetting("ConnectionString"));



// 通過ObjectSpaces獲取所有Customer數據

ObjectSpace os = new ObjectSpace(

Helper.GetApplicationSetting("MappingFile"), conn);



ObjectSet ost = os.GetObjectSet(typeof(MyCustomer), "");



// 以ArrayList方式返回所有Customer數據

// 注:當前版本中,ObjectSet對象通過Remoting進行傳遞有 Bug

ArrayList al = new ArrayList(ost);



return al;

}

}































































作者相信,在看完代碼后,肯定有些朋友會產生這樣的疑問:

代碼13中的RemoteCustomer完成的也是我們前面分析過的

Data Access Logic所能完成的工作,雖然當中隔了一層Remoting,

但本質相同,難道就不能與代碼11,12中的CustomerDal_ORM進行

一次“有效重組”嗎?

回答是肯定的!



不過,我們還是需要做兩個非常簡單的操作:

(1) 大家還記得代碼9中的DalBase嗎?只要我們令它從MarshalByRefObject繼承(原先是默認的object),即可“輕松”解決這個問題!但也別高興太早,一旦如此,所有其它的Data Access Logic類也將不得不接受這“多余的饋贈”L,要知道,畢竟通過Remoting進行Data Access Logic操作的機會還不是很多(一般通過Business Logic即可解決問題),這樣的“饋贈”并不是人人可以消受的(這也是作者并沒在DAF Solution中這么實現的原因)!

(2)將上述RemoteCustomer的代碼并入CustomerDal_ORM中,但是,請注意:別忘了將方法名稱改掉(因為已經有一個GetAllCustomers方法存在,雖然返回類型不同,但任何.NET下的Compiler都是無法區分這種差別的J)!



下一段:http://www.csdn.net/develop/Read_Article.asp?id=27559

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

主站蜘蛛池模板: 梅州市| 太湖县| 吉安县| 河南省| 安顺市| 连山| 浏阳市| 双柏县| 左云县| 西林县| 吉安市| 鄢陵县| 开封市| 龙游县| 齐齐哈尔市| 南康市| 灵璧县| 磴口县| 都兰县| 蚌埠市| 涞水县| 西林县| 静海县| 遂平县| 南阳市| 噶尔县| 保德县| 当涂县| 浏阳市| 应用必备| 普格县| 丹凤县| 西畴县| 巫山县| 延川县| 自治县| 安庆市| 吴忠市| 谷城县| 锡林郭勒盟| 岳西县|