Witam,
Sprawa wygląda następująco, robimy z kolegami projekt aplikacji okienkowej dla trenerów w szkole. Aplikacja ma być prosta zapis/odczyt, dodanie/usuwanie zawodników. Dane zawodników: imię nazwisko, czas biegu, pozycja startowa. Na początku myślałem o rozwiązaniu na listach i zapisu do pliku .txt, ale jedna uwaga czasy mają być sortowane rosnąco, wiec trzeba zachować ID zawodnika, żeby nie pomylić nazwiska i pozycji na jakiej biegł. No i mam kłopot. Podstawy ogarniam z c# jakieś propozycje ?
Ja dopiero uczę się c#. Ale skoro tylko sortowanie jest dla Ciebie problemem, to może zastosujesz Linq? Właśnie zacząłem się tego uczyć i listę to bym sobie posortował. O na przykład tak:
class Zawodnik {
public Zawodnik(int Id, string NazwiskoImię, double Wynik) {
this.Id = Id;
this.NazwiskoImię = NazwiskoImię;
this.Wynik = Wynik;
}
public string NazwiskoImię { get; private set; }
public int Id { get; private set; }
public double Wynik { get; private set; }
public override string ToString() { return Id + ". " + NazwiskoImię + " - " + Wynik; }
}
class Trener : IDisposable {
private List<Zawodnik> Zawodnicy = new List<Zawodnik>();
public void Dispose() { /* Tu nie ma nic do roboty */ }
public void ReadData()
{
throw new System.NotImplementedException();
}
public void SaveData()
{
throw new System.NotImplementedException();
}
public void ShowData() {
// poniższa linia jest umieszczona tylko dla wstępnego testu - docelowo do usunięcia
InitTestData();
var result = from v in Zawodnicy orderby v.Wynik descending select v.ToString();
foreach (string s in result) Console.WriteLine(s);
}
// poniższa metoda jest umieszczona tylko dla wstępnego testu - docelowo do usunięcia
private void InitTestData() {
Zawodnicy.Add(new Zawodnik(1, "koleś 1", 12.6D));
Zawodnicy.Add(new Zawodnik(2, "koleś 2", 11.7D));
Zawodnicy.Add(new Zawodnik(3, "koleś 3", 13.9D));
}
}
No i gdzieś możesz sprawdzić, czy działa i zrobić na przykład coś takiego:
using (Trener trener = new Trener()) { trener.ShowData(); }