public IEnumerable <T> Get <T>(T criteria = default(T)) { string sql; if (criteria != null) { var mapper = EntityMapper.MapProperties(criteria); var sqlPairs = EntityMapper.GetSqlPairs(mapper.AllNames, " AND "); sql = $@"SELECT * FROM [{typeof(T).Name}] WHERE {sqlPairs}"; } else { sql = $@"SELECT * FROM [{typeof(T).Name}]"; } using (var connection = _context.Connection) { connection.Open(); var response = connection.Query <T>(sql, commandType: CommandType.Text); connection.Close(); return(response); } }
public int Update <T>(T entity) { var mapper = EntityMapper.MapProperties(entity); var sqlIdPairs = EntityMapper.GetSqlPairs(mapper.IdNames); var sqlValuePairs = EntityMapper.GetSqlPairs(mapper.ValueNames); var sql = $@"UPDATE [{typeof(T).Name}] SET {sqlValuePairs} WHERE {sqlIdPairs}"; try { using (var connection = _context.Connection) { connection.Open(); var id = connection.Execute(sql, mapper.AllPairs, commandType: CommandType.Text); connection.Close(); return(id); } } catch (Exception e) { throw new Exception(e.Message); } }