/// <summary> /// PopulateObject: /// Notese que en vez de utilizar un SqlDataReader para nuestra función de asignación, /// se utiliza un IDataRecord, que es la interfaz que implementan todos los DataReaders. /// El uso de IDataRecord hace que el proceso de asignación sea independiente del proveedor. /// </summary> /// <param name="dr"></param> /// <returns></returns> public CObject PopulateObject(DataRow dr) { DALEvento dalEvento = new DALEvento(); DALAsociados dalAsociado = new DALAsociados(); CEvento cEvento = new CEvento(); CAsociado cAsociado = new CAsociado(); cAsociado.Id = Convert.ToString(dr["IdAsociado"]); cEvento.Id = (Convert.ToInt32(dr["IdEvento"])); CBitacora oCObject = new CBitacora(); oCObject.Id = Convert.ToInt32(dr["IdBitacora"]); oCObject.IdEvento = (dalEvento.ReadById(cEvento) as CEvento); oCObject.IdAsociado = (dalAsociado.ReadById(cAsociado)as CAsociado); oCObject.Nombre = Convert.ToString(dr["Nombre"]); oCObject.NumeroCedula= Convert.ToString(dr["NumeroCedula"]); oCObject.Confirmado = EnumUtil.ParseEnum<AsocState>(Convert.ToString(dr["Confirmado"])); oCObject.Estado = EnumUtil.ParseEnum<UserState>(Convert.ToString(dr["Estado"])); oCObject.Correo = Convert.ToString(dr["Correo"]); oCObject.Telefono= Convert.ToString(dr["Telefono"]); oCObject.Presente= Convert.ToBoolean(dr["Presente"]); // Checking for NULL if(dr["FechaAsistencia"] != DBNull.Value) oCObject.FechaAsistencia= Convert.ToDateTime(dr["FechaAsistencia"]); if (dr["FechaCreacion"] != DBNull.Value) oCObject.FechaCreacion = Convert.ToDateTime(dr["FechaCreacion"]); if (dr["UsuarioCreacion"] != DBNull.Value) oCObject.UsuarioCreacion = Convert.ToString(dr["UsuarioCreacion"]); if (dr["FechaModificacion"] != DBNull.Value) oCObject.FechaModificacion = Convert.ToDateTime(dr["FechaModificacion"]); if (dr["UsuarioModificacion"] != DBNull.Value) oCObject.UsuarioModificacion = Convert.ToString(dr["UsuarioModificacion"]); // Return return oCObject; }
public BLLEvento() { this.DALConnection = new DALEvento(); this.DALAsociados = new DALAsociados(); }