当前位置: 首页>>代码示例>>C#>>正文


C# RepositoryFactory.GetNationalCupFinal方法代码示例

本文整理汇总了C#中RepositoryFactory.GetNationalCupFinal方法的典型用法代码示例。如果您正苦于以下问题:C# RepositoryFactory.GetNationalCupFinal方法的具体用法?C# RepositoryFactory.GetNationalCupFinal怎么用?C# RepositoryFactory.GetNationalCupFinal使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在RepositoryFactory的用法示例。


在下文中一共展示了RepositoryFactory.GetNationalCupFinal方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: CreateNextSeason

        public void CreateNextSeason(string previousSeasonId, IUnitOfWorkRepository repository)
        {
            Season previousSeason;
             using (var seasonRepository = _repositoryFactory.CreateSeasonRepository())
             {
            previousSeason = seasonRepository.GetOne(previousSeasonId);
             }

             if (previousSeason.SeasonStatus != SeasonStatus.Ended)
             {
            throw new ConflictException("Season must be ended before a new one can be created");
             }

             var newSeasonInfo = new NewSeasonInfo
             {
            Game = previousSeason.Game,
            SeasonNumber = previousSeason.GameOrder + 1
             };

             // Determine which teams promote and relegate.
             IEnumerable<Team> allTeamsSortedOnLeagueAndPosition;
             using (var teamRepository = _repositoryFactory.CreateTeamRepository())
             {
            allTeamsSortedOnLeagueAndPosition = teamRepository.GetTeamsByGame(previousSeason.GameId).OrderBy(x => x.CurrentLeagueCompetition.Order).ThenBy(x => x.CurrentLeaguePosition);
             }

             var teamsGroupedPerLeague = allTeamsSortedOnLeagueAndPosition.GroupBy(t => t.CurrentLeagueCompetitionId).Select(grp => grp.ToList()).ToList();
             var newLeagues = _leagueManager.PromoteAndRelegateTeams(teamsGroupedPerLeague);

             newSeasonInfo.TeamsLeague1 = newLeagues[0];
             newSeasonInfo.TeamsLeague2 = newLeagues[1];
             newSeasonInfo.TeamsLeague3 = newLeagues[2];
             newSeasonInfo.TeamsLeague4 = newLeagues[3];

             // Determine champion of the highest league.
             newSeasonInfo.NationalChampion = teamsGroupedPerLeague[0][0];

             // Determine cup winner.
             using (var matchRepository = new RepositoryFactory().CreateMatchRepository())
             {
            var cupFinal = matchRepository.GetNationalCupFinal(previousSeason.Id);
            newSeasonInfo.NationalCupWinner = cupFinal.GetWinner();
             }

             // Now all teams have been placed in the right leagues, so create match schedules for all competitions.
             var seasonAndCompetitionSchedules = CreateSeasonAndCompetitionSchedules(newSeasonInfo);

             // Insert the season and all competition schedules.
             InsertSeasonAndCompetitionSchedule(repository, seasonAndCompetitionSchedules);
        }
开发者ID:bouwe77,项目名称:fmg,代码行数:50,代码来源:SeasonManager.cs


注:本文中的RepositoryFactory.GetNationalCupFinal方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。