Für den Teil der Datenbank unten muss ich herausfinden, welches Team in der Saison die meisten Tore pro Spiel erzielte.Erstellen komplexer LINQ-Abfrage
Dafür verwendete ich Methoden
public List<Tour> GetAllTours(Guid seasonGuid){...}
und
public List<SimpleMatch> GetMatches(Guid tour)
{
using (var db = new ConnectToDb())
{
if (!db.Matches.Any()) return new List<Match>();
var matches = db.Matches;
var matchesToReturn = new List<Match>();
foreach (var item in
matches
.Include(x => x.Home)
.Include(x => x.Guest)
.Include(x => x.Result)
.Include(x => x.Tour))
{
if (item.Tour.Id != tour)
matchesToReturn.Add(item);
}
return matchesToReturn;
}
}
und
public List<SimpleTeam> GetTeamMostGoalInSeason(List<Match> matches){...}
wo SimpleTeam
ein Team mit Cou ist nt Ziele, wenn Teams mit max count == viele, List
es Methode ist nicht winzig, und ich weiß nicht, wie dies mit LINQ-Abfrage.
Wenn mehrere Teams die gleiche Anzahl an Toren pro Spiel erzielt haben, geben Sie alle diese Teams zurück? Ihr Code sagt ja, aber Ihre Beschreibung sagt nein. Auch die Beziehung zwischen 'Matches' und' Results' ist falsch. Ein Ergebnis könnte nur 1 Übereinstimmung haben, nein? Die richtige Beziehung ist ein 1-1 oder einfach alle Ergebnisse löschen – Shoe
Ja, Beziehung 'Matches' und' Ergebnisse' müssen 1-1, danke – Venedchuk
@Shoe ist entweder falsch oder OP versucht/wurde gebeten, alle möglichen Ergebnisse zu haben eine Tabelle und nur Referenz in jedem Spiel das entsprechende Ergebnis –