public List <Candidate> GetCandidateByIds(List <int> ids) { var res = new List <Candidate>(); string idsStr = DBCommon.ConvertListIntToString(ids); string whereCondition = $"WHERE [C].[Id] IN ({idsStr})"; var query = "SELECT [C].[Id], " + " [C].[DeliveryUnitId]," + " [C].[RelationType]," + " [C].[FirstName]," + " [C].[LastName]," + " [C].[CandidateRoleId]," + " [C].[DocType]," + " [C].[DocNumber]," + " [C].[EmployeeNumber]," + " [C].[InBench]," + " [C].[Picture]," + " [C].[IsActive]," + " [C].[Grade]," + " [C].[CurrentProjectId]," + " [C].[CurrentProjectJoin] " + "FROM [dbo].[Candidate] AS [C] " + $"{whereCondition}"; using (var conn = new SqlConnection(Config.GetConnectionString())) { using (var cmd = new SqlCommand(query, conn)) { res = getCandidates(conn, cmd); } } return(res); }
public List <Candidate> GetCandidatesPaginated(int pageIdx, int pageSize) { var res = new List <Candidate>(); var query = "SELECT [C].[Id], " + " [C].[DeliveryUnitId]," + " [C].[RelationType]," + " [C].[FirstName]," + " [C].[LastName]," + " [C].[CandidateRoleId]," + " [C].[DocType]," + " [C].[DocNumber]," + " [C].[EmployeeNumber]," + " [C].[InBench]," + " [C].[Picture]," + " [C].[IsActive]," + " [C].[Grade]," + " [C].[CurrentProjectId]," + " [C].[CurrentProjectJoin] " + "FROM [dbo].[Candidate] AS [C] " + "ORDER BY [C].[FirstName]," + " [C].[LastName]" + "OFFSET(@pageIdx * @pageSize) ROWS " + "FETCH NEXT @pageSize ROWS ONLY"; using (var conn = new SqlConnection(Config.GetConnectionString())) { using (var cmd = new SqlCommand(query, conn)) { DBCommon.SetPaginationParams(pageIdx, pageSize, cmd); res = getCandidates(conn, cmd); } } return(res); }
public List <Project> GetProjectsPaginated(int pageIdx, int pageSize) { var res = new List <Project>(); var query = "SELECT [P].[Id], " + " [P].[Code]," + " [P].[Name] " + "FROM [dbo].[Project] AS [P]" + "ORDER BY [P].[Name] " + "OFFSET(@pageIdx * @pageSize) ROWS " + "FETCH NEXT @pageSize ROWS ONLY"; using (var conn = new SqlConnection(Config.GetConnectionString())) { using (var cmd = new SqlCommand(query, conn)) { DBCommon.SetPaginationParams(pageIdx, pageSize, cmd); res = getProjects(conn, cmd); } } return(res); }