private object RetrieveOriginal(object obj, Criteria criteria) { var selectSql = ClassConfigContainer.FindSelectSql(obj.GetType()); criteria = UpdateCriteria(obj.GetType(), criteria); var table = RetrieveTable(selectSql, new CriteriaNode(null) { Criteria = criteria }); var list = ObjectMapper.MapTableToList(obj.GetType(), table); if (list.Count == 0) { return(null); } if (list.Count > 1) { throw new ServerException("More than one objects matched with criteria are retrieved."); } return(list[0]); }
private List <T> RetrieveAll <T>(CriteriaNode criteriaNode) where T : new() { var selectSql = ClassConfigContainer.FindSelectSql <T>(); var criterias = criteriaNode.SearchAll(); if (criterias.Count > 0) { UpdateCriteria <T>(criterias); } var table = RetrieveTable(selectSql, criteriaNode); return(ObjectMapper.MapTableToList <T>(table)); }