如果要表示一对多的对象结构,我们可以采用如下的方式(表明了一个入库单的结构,这个入库单包含了入库单头和相关明细):
public class Form : PersistenceCapable { private EntityData form; private FormDetail formDetail; #region 构造函数 public Form() : this(true) {} public Form(bool AutoInit) { form=EntityPrototypeManager.GetEmptyEntity("Form"); if(AutoInit) form.NewRecord("Form"); } public Form(EntityData entity) { form=entity; } #endregion #region 属性 public string FormID { get{return form["FormID","Form"].ToString();} set{form["FormID","Form"]=value;} } public DateTime FormTime { get{return form.GetDateTime("FormTime","Form");} set{form["FormTime","Form"]=value;} } public FormDetail FormDetail { get { if(formDetail==null) { formDetail=new FormDetail(form); } return formDetail; } } #endregion #region PersistenceCapable 成员 public int ObjectCount { get { return form.EntityCount; } } public EntityData EntityData { get { return form; } set { form=value; } } public bool Next() { return form.Next("Form"); } public void First() { form.First("Form"); } public void AddNew() { form.NewRecord("Form"); } #endregion } public class FormDetail : PersistenceCapable { private EntityData form; #region 构造函数 public FormDetail() : this(true) {} public FormDetail(bool AutoInit) { form=EntityPrototypeManager.GetEmptyEntity("Form"); if(AutoInit) form.NewRecord("FormDetail"); } public FormDetail(EntityData entity) { form=entity; } #endregion #region 属性 public string FormDetailID { get{return form["FormDetailID","FormDetail"].ToString();} set{form["FormDetailID","FormDetail"]=value;} } public string FormID { get{return form["FormID","FormDetail"].ToString();} set{form["FormID","FormDetail"]=value;} } public string ProductID { get{return form["ProductID","FormDetail"].ToString();} set{form["ProductID","FormDetail"]=value;} } public decimal InCount { get{return form.GetDecimal("InCount","FormDetail");} set{form["InCount","FormDetail"]=value;} } #endregion #region PersistenceCapable 成员 public int ObjectCount { get { return form.Tables["FormDetail"].Rows.Count; } } public EntityData EntityData { get { return form; } set { form=value; } } public bool Next() { return form.Next("FormDetail"); } public void First() { form.First("FormDetail"); } public void AddNew() { form.NewRecord("FormDetail"); } #endregion } |
本文地址:http://com.8s8s.com/it/it45145.htm