public static void Main() { var context = new FootballEntities(); var teamNames = context.Teams.Select(t => t.TeamName); foreach (var teamName in teamNames) { Console.WriteLine(teamName); } }
public static void Main() { var context = new FootballEntities(); var internationalMatches = context.InternationalMatches .Select( im => new { HomeCountryName = im.HomeCountry.CountryName, HomeCountryCode = im.HomeCountry.CountryCode, AwayCountryName = im.AwayCountry.CountryName, AwayCountryCode = im.AwayCountry.CountryCode, League = im.League.LeagueName, HomeGoals = im.HomeGoals, AwayGoals = im.AwayGoals, MatchDate = im.MatchDate }) .OrderBy(im => im.MatchDate) .ThenBy(im => im.HomeCountryName) .ThenBy(im => im.AwayCountryName); var xMatches = new XElement("matches"); foreach (var match in internationalMatches) { var xMatch = new XElement("match"); if (match.MatchDate != null) { DateTime dateTime; DateTime.TryParse(match.MatchDate.ToString(), out dateTime); if (dateTime.TimeOfDay.TotalSeconds == 0) { var xDate = new XAttribute("date", dateTime.ToString("dd-MMM-yyyy")); xMatch.Add(xDate); } else { var xDateTime = new XAttribute("date-time", dateTime.ToString("dd-MMM-yyyy HH:MM")); xMatch.Add(xDateTime); } } xMatch.Add(new XElement("home-country", match.HomeCountryName, new XAttribute("code", match.HomeCountryCode))); xMatch.Add(new XElement("away-country", match.AwayCountryName, new XAttribute("code", match.AwayCountryCode))); if (match.HomeGoals != null && match.AwayGoals != null) { xMatch.Add(new XElement("score", string.Format("{0}-{1}", match.HomeGoals, match.AwayGoals))); } if (match.League != null) { xMatch.Add(new XElement("league", match.League)); } xMatches.Add(xMatch); } new XDocument(xMatches).Save(@"..\..\international-matches.xml"); Console.WriteLine("Export to international-matches.xml complited!"); }
public static void Main() { var context = new FootballEntities(); var leaguesAndTeams = XDocument.Load(@"..\..\leagues-and-teams.xml"); var xLeaguesAndTeams = leaguesAndTeams.XPathSelectElements("/leagues-and-teams/league"); int count = 1; foreach (var xLeague in xLeaguesAndTeams) { Console.WriteLine("Processing league #{0} ...", count); League league = null; if (xLeague.Element("league-name") != null) { var leagueName = xLeague.Element("league-name").Value; var existingLeague = context.Leagues.FirstOrDefault(l => l.LeagueName == leagueName); if (existingLeague != null) { league = existingLeague; Console.WriteLine("Existing league: {0}", leagueName); } else { league = new League() { LeagueName = xLeague.Element("league-name").Value }; context.Leagues.Add(league); Console.WriteLine("Created league: {0}", league.LeagueName); } } if (xLeague.Element("teams") != null) { var xTeams = xLeague.XPathSelectElements("teams/team"); foreach (var xTeam in xTeams) { var teamName = xTeam.Attribute("name").Value; var teamCountry = xTeam.Attribute("country"); string countryName = null; if (teamCountry != null) { countryName = teamCountry.Value; } Team team = context.Teams.FirstOrDefault(t => t.TeamName == teamName && t.Country.CountryName == countryName); if (team != null) { Console.WriteLine("Existing team: {0} ({1})", teamName, countryName ?? "no country"); } else { team = new Team(); team.TeamName = teamName; team.Country = context.Countries.FirstOrDefault(c => c.CountryName == countryName); context.Teams.Add(team); Console.WriteLine("Created team: {0} ({1})", team.TeamName, countryName ?? "no country"); } if (league != null) { if (team.Leagues.Contains(league)) { Console.WriteLine("Existing team in league: {0} belongs to {1}", team.TeamName, league.LeagueName); } else { team.Leagues.Add(league); context.SaveChanges(); Console.WriteLine("Added team to league: {0} to league {1}", team.TeamName, league.LeagueName); } } } } context.SaveChanges(); count++; } }