|
| |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
数据实体的表示 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方式来遍历。 返回类别: 教程 上一教程: Whidbey 初体验之局部类型 ( partial 类型) 下一教程: 第十四章 数组[《.net框架程序设计》读书笔记] 您可以阅读与"Websharp使用说明(2)"相关的教程: · Websharp使用说明(3) · Websharp使用说明(8) · Websharp使用说明(5) · Websharp使用说明(6) · Websharp使用说明(1) |
| 快精灵印艺坊 版权所有 |
首页 |
||