public override T Retrieve <T>(BaseEntity entity) { var lstResult = dao.ExecuteQueryProcedure(mapper.GetRetriveStatement(entity)); var dic = new Dictionary <string, object>(); if (lstResult.Count > 0) { dic = lstResult[0]; var objs = mapper.BuildObject(dic); return((T)Convert.ChangeType(objs, typeof(T))); } return(default(T)); }