.NET 4.x Класс, содержащий сведения о студентах. Как осуществить сортировку - C#
Формулировка задачи:
есть задача
На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО, номер группы, результаты сдачи трех экзаменов. Вывести в новый файл информацию о студентах, успешно сдавших сессию, отсортировав по номеру группы.
Написал код (Класс) но не как не могу отсортировать PS по коду принимаю любую критику и предложения
по номеру группы.
class Student_List
{
List<Student> _Sudent_List = new List<Student>(); //Денамичиский массив студентов;
/// <summary>
/// Структура студент содержет поля Ф,И,О, Номер группы, И 3 оценки;
/// </summary>
struct Student
{
internal String _Name, //имя;
_Family_Name, //фамилия;
_Middle_Name; //отчество;
internal Int32 _Number_Group, //Номер группы;
_First_Exam, //Первый экзамен;
_Second_Exam, //Второй экзамен;
_Third_Exam; //Третий экзамен;
}
/// <summary>
/// Добвляет запись о студенте в коллекцию;
/// </summary>
/// <param name="Name">Имя студента</param>
/// <param name="Family_Name">Фамилия студента</param>
/// <param name="Middle_Name">Отчество студента</param>
/// <param name="Number_Group">Номер группы</param>
/// <param name="First_Exam">Результат Первного экзамена</param>
/// <param name="Second_Exam">Результат Второго экзамена</param>
/// <param name="Third_Exam">Результат Третьего экзамена</param>
public void Add(Int32 Number_Group, String Family_Name, String Name,
String Middle_Name, Int32 First_Exam,
Int32 Second_Exam, Int32 Third_Exam)
{
_Sudent_List.Add(
new Student
{
_Name = Name,
_Family_Name = Family_Name,
_Middle_Name = Middle_Name,
_Number_Group = Number_Group,
_First_Exam = First_Exam,
_Second_Exam = Second_Exam,
_Third_Exam = Third_Exam
});
}
//перегрузка Add ..
void Add(Student student)
{
_Sudent_List.Add(student);
}
//составление списка сдавших студентов
public Student_List Sdali()
{
Student_List _Temp = new Student_List();
for(Int32 i =0; i < _Sudent_List.Count; i++){//если по всем экзаменам >2 то сдал
if (_Sudent_List[i]._First_Exam > 2 && _Sudent_List[i]._Second_Exam > 2 && _Sudent_List[i]._Third_Exam > 2)
{
_Temp.Add(_Sudent_List[i]);//добавляю в коллекцию сдавших
}
}
return _Temp;
}
//Здесь не чего не происходит :(
public void Sort_Number()
{
this._Sudent_List.Sort();
}
}
private void Main()
{
Student_List _Student_List = new Student_List();
using (StreamReader _Read = new StreamReader("List.txt"))
{
while (!_Read.EndOfStream)//иду до конца файла
{
String[] _Temp = _Read.ReadLine().Split(' ');
_Student_List.Add(
Convert.ToInt32(_Temp[0]),
_Temp[1], _Temp[2], _Temp[3],
Convert.ToInt32(_Temp[4]),
Convert.ToInt32(_Temp[5]),
Convert.ToInt32(_Temp[6]));
}
}
_Student_List.Sdali().Sort_Number(); //С этим кодом винда пишет что прога не совместим и настраивает режим совместимости О_о
}Решение задачи: «.NET 4.x Класс, содержащий сведения о студентах. Как осуществить сортировку»
textual
Листинг программы
public void Sort_Number()
{
this._Sudent_List.Sort(delegate( Student T,Student B){
return T._Number_Group.CompareTo(B._Number_Group);
});
}