/// <summary> /// 外部方法:执行具体的反序列化过程 /// </summary> /// <param name="builder">当前table的builder</param> /// <param name="table">待反序列化的table</param> /// <param name="otherParam">其他需要存入反序列化中的参数</param> /// <returns></returns> public bool ExcuteDesrialize(BaseDataTableBuilder builder, DataTable table, params object[] otherParam) { bool result = false; if (deserializeResult == null) { deserializeResult = new List <T>(); } deserializeResult.Clear(); try { foreach (DataRow item in table.Rows) { deserializeResult.Add(onDesrialize(builder, item, otherParam)); } result = true; } catch (Exception ex) { ErrorMessage = ex.Message; } return(result); }
public abstract T onDesrialize(BaseDataTableBuilder builder, System.Data.DataRow row);
/// <summary> /// 初始化方法 /// </summary> /// <param name="TableBuilder">数据表结构构建器</param> public void Initial(BaseDataTableBuilder TableBuilder) { this.m_Data = new List <T>(); this.m_TableBuilder = TableBuilder; }
public virtual void onAfterRowCreated(DataRow tempRow, BaseDataTableBuilder m_TableBuilder, int index) { }
public virtual void onBeforeRowCreated(BaseDataTableBuilder m_TableBuilder, int index) { }
public virtual void onPrepareCreated(DataTable m_ResultTable, BaseDataTableBuilder m_TableBuilder) { }
/// <summary> /// 初始化方法 /// </summary> /// <param name="Data">待展示的数据</param> /// <param name="TableBuilder">数据表结构构建器</param> public void Initial(IList <T> Data, BaseDataTableBuilder TableBuilder) { this.m_Data = new List <T>(Data); this.m_TableBuilder = TableBuilder;; }
/// <summary> /// 创建数据表中的一行记录 /// </summary> /// <param name="tempRow">待创建的一行记录</param> /// <param name="builder">当前Adapter所使用的表结构构造器</param> /// <param name="RowIndex">当前索引序号</param> /// <param name="t">当前元素元素</param> public abstract void onCreateDataRow(ref DataRow tempRow, BaseDataTableBuilder builder, int RowIndex, T t);
/// <summary> /// 功能方法:执行具体的反序列化过程 /// </summary> /// <param name="builder">当前table的builder</param> /// <param name="row">待反序列化的一行数据</param> /// <param name="otherParam">其他需要存入反序列化中的参数</param> /// <returns></returns> public abstract T onDesrialize(BaseDataTableBuilder builder, DataRow row, params object[] otherParam);
/// <summary> /// 初始化方法 /// </summary> /// <param name="TableBuilder">数据表结构构建器</param> public void Initial(BaseDataTableBuilder TableBuilder) { this.m_TableBuilder = TableBuilder; }