protected Dictionary <int, HeroData> GetHeroesByGrade(int grade) { // 입력 범위 초과 if (grade <= 0 || grade > numberOfGrades) { throw new ArgumentOutOfRangeException(); } HeroTableHandler handler = delegate(int _grade) { var _ret = _wholeTable.Where(x => x.Value.Grade == _grade).ToDictionary(x => x.Key, x => x.Value); return(_ret); }; var ret = handler(grade); return(ret); }
// Select heroes by grade public Dictionary <int, HeroData> SelectHeroesByGrade(int grade) { // 입력 범위 초과 if (grade <= 0 || grade > numberOfGrades) { throw new ArgumentOutOfRangeException(); } HeroTableHandler handler = delegate(int _grade) { var index = _grade - 1; return(HeroesWithGrade[index]); }; var ret = handler(grade); return(ret); }