国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

實戰 .Net 數據訪問層 - 15

2024-07-10 13:05:28
字體:
來源:轉載
供稿:網友
上面的示意圖中,步驟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
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 定远县| 龙川县| 互助| 嘉禾县| 当雄县| 罗平县| 桑日县| 河南省| 墨江| 开平市| 耿马| 吉安市| 弥勒县| 延吉市| 哈巴河县| 突泉县| 大厂| 额敏县| 阿坝县| 得荣县| 涞源县| 泸西县| 天津市| 普格县| 科尔| 阳山县| 双鸭山市| 裕民县| 秦皇岛市| 璧山县| 米泉市| 靖远县| 通州市| 蓝山县| 泰宁县| 呼和浩特市| 汪清县| 白玉县| 红河县| 辽阳市| 阜平县|