public class BaseEntity where T : BaseEntity
{
public BaseEntity()
{
}
public BaseEntity(DataTable table, int indexRow)
{
InitObjInfo(table, indexRow);
}
///
/// 初始化实体类对象信息
///
///
///
private void InitObjInfo(DataTable table, int indexRow)
{
for (int i = 0; i < table.Columns.Count; i++)
{
// 按列的名称,从当前对象中获取同名属性
PropertyInfo pInfo = this.GetType().GetProperty(table.Columns[i].ColumnName);
// 存在该属性
if (pInfo != null)
{
object value = table.Rows[indexRow][table.Columns[i].ColumnName];
value = value == DBNull.Value ? string.Empty : value;
// 如果对象属性定义的类型和table的列的类型一致
if (pInfo.PropertyType == table.Columns[i].DataType)