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

首頁 > 開發 > 綜合 > 正文

Websharp使用說明(2)

2024-07-21 02:17:17
字體:
來源:轉載
供稿:網友
數據實體的表示

websharp在數據的表現上,能夠采用兩種方式。

第一種方式,充分利用了.net framework類庫中dataset的功能,設計了一個entitydata類。這個類繼承了dataset,并增加了一些屬性和方法。同數據庫的映射關系,采用xml配置文件的方式。xml配置文件可以通過我們提供的工具來生成。

在實際的應用中,要獲取一個product實體對象,可以通過如下方式取得:

entitydata product=entityprotypemanager. getemptyentity(“product”);

然后,可以通過如下方式來訪問這個對象的屬性:

string productid=customer[“productid”]

可以看到,這種方式同純粹的面向對象的方式有點不同。在這種方式下,數據的表現形式只有一個,那就是entitydata。其好處是明顯的,不用為每個實體都單獨編寫一個類,能夠大大減少代碼的編寫量。其缺點也很明顯,那就是不能利用編譯器類型檢測的功能,如果在調用對象的屬性的時候,寫錯了屬性的名稱,就可能出錯,但是,這個問題可以通過工具來解決。這種方式,比較符合原來使用ado編程人員的習慣。



第二種方式,我們可以編寫一個product類,然后,按照標準的oo的方法來使用這個類。只不過,在編寫product類的時候,必須實現persistencecapable接口,并且,同時可以使用到entitydata類的強大功能。

persistencecapable類的定義見 附1:websharp主要接口定義——persistencecapable



一個按照這個標準實現的product類的示例如下:

public class product : persistencecapable

{

private entitydata product;

public product() : this(true)

{}



public product(bool autoinit)

{

product=entityprototypemanager.getemptyentity("product");

if(autoinit)

product.newrecord();

}

public string productid

{

get{return product.getstring("productid");}

set{product["productid"]=value;}

}



public string name

{

get{return product.getstring("name");}

set{product["name"]=value;}

}



public string unitname

{

get{return product.getstring("unitname");}

set{product["unitname"]=value;}

}



public string description

{

get{return product.getstring("description");}

set{product["description"]=value;}

}



public decimal price

{

get{return product.getdecimal("price");}

set{product["price"]=value;}

}



public decimal currentcount

{

get{return product.getdecimal("currentcount");}

set{product["currentcount"]=value;}

}



public int objectcount

{

get

{

return product.entitycount;

}

}



public entitydata entitydata

{

get

{

return product;

}

set

{

product=value;

}

}



public bool next()

{

return product.next();

}



public void first()

{

product.first();

}

public void addnew()

{

product.newrecord();

}

}




可以看出,采用這種方式,product類既可以代表一個單個的product對象,也可以包含一個product對象集合,并且可以通過next和first方法來遍歷。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永济市| 太保市| 柳州市| 孟津县| 维西| 西平县| 左云县| 西和县| 安吉县| 鄢陵县| 东源县| 奉化市| 息烽县| 北流市| 安远县| 屏东市| 威海市| 连山| 靖边县| 龙游县| 清流县| 钟山县| 泸定县| 岐山县| 盐山县| 虎林市| 安福县| 大同县| 奎屯市| 拜城县| 龙川县| 建昌县| 中宁县| 东明县| 正镶白旗| 图片| 高淳县| 锡林浩特市| 新余市| 莆田市| 麻栗坡县|