/// <summary> /// Returns profile information for a candidate who is active in an election cycle. /// </summary> /// <param name="candidateID">The desired candidate's CFIS ID.</param> /// <param name="electionCycle">The desired election cycle.</param> /// <returns>The specified candidate's profile for the specified election cycle.</returns> public ActiveCandidate GetActiveCandidate(string candidateID, string electionCycle) { using (ActiveCandidateTds ds = new ActiveCandidateTds()) { using (ActiveCandidateTableAdapter ta = new ActiveCandidateTableAdapter()) { ta.FillByCandidate(ds.ActiveCandidate, candidateID, electionCycle); } foreach (ActiveCandidateTds.ActiveCandidateRow row in ds.ActiveCandidate.Rows) { return(Parse(row)); } return(null); } }
/// <summary> /// Retrieves basic profile information for all candidates active in a specific election cycle. /// </summary> /// <param name="electionCycle">The election cycle to filter by.</param> /// <returns>A collection of <see cref="ActiveCandidate"/> objects representing all candidates active in the <paramref name="electionCycle"/> election cycle, indexed by CFIS ID.</returns> public Dictionary <string, ActiveCandidate> GetActiveCandidates(string electionCycle) { Dictionary <string, ActiveCandidate> candidates = new Dictionary <string, ActiveCandidate>(); using (ActiveCandidateTds ds = new ActiveCandidateTds()) { using (ActiveCandidateTableAdapter ta = new ActiveCandidateTableAdapter()) { ta.FillBy(ds.ActiveCandidate, electionCycle); } foreach (ActiveCandidateTds.ActiveCandidateRow row in ds.ActiveCandidate.Rows) { ActiveCandidate c = Parse(row); if (c != null) { candidates.Add(c.ID, c); } } } return(candidates); }