protected override ScoreCard GetItemFromDataReader(IDataReader reader) { int id = Convert.ToInt32(reader.GetColumnValue(ID)); int contestantId = Convert.ToInt32(reader.GetColumnValue(CONTESTANTID)); int judgeId = Convert.ToInt32(reader.GetColumnValue(JUDGEID)); Contestant contestant = new ContestantRepo().Get(contestantId); Judge judge = new JudgeRepo().Get(judgeId); ICollection <ScorableCriterion> scorableCriteria = new ScorableCriterionRepo().GetWhereParentForeignKeyIs(id); return(new ScoreCard(id, contestant, judge, scorableCriteria)); }
private void UpdateScoreCardScorableCriteria(ScoreCard scoreCard) { ScorableCriterionRepo repo = new ScorableCriterionRepo(); foreach (ScorableCriterion scorableCriterion in scoreCard.ScorableCriteria) { if (repo.Exists(scorableCriterion.Id)) { repo.Update(scorableCriterion); } else { repo.Add(scorableCriterion); new ScoreCardScorableCriterionRepo().Add(new ScoreCardScorableCriterion(scoreCard.Id, scorableCriterion.Id)); } } }