本文整理汇总了C#中IUnitOfWorkRepository.RegisterDelete方法的典型用法代码示例。如果您正苦于以下问题:C# IUnitOfWorkRepository.RegisterDelete方法的具体用法?C# IUnitOfWorkRepository.RegisterDelete怎么用?C# IUnitOfWorkRepository.RegisterDelete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IUnitOfWorkRepository
的用法示例。
在下文中一共展示了IUnitOfWorkRepository.RegisterDelete方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DeleteSeasons
public void DeleteSeasons(IUnitOfWorkRepository repository)
{
// Get all seasons for the game.
using (var seasonRepository = new RepositoryFactory().CreateSeasonRepository())
using (var seasonCompetitionRepository = new RepositoryFactory().CreateSeasonCompetitionRepository())
using (var seasonCompetitionTeamRepository = new RepositoryFactory().CreateRepository<SeasonCompetitionTeam>())
using (var roundRepository = new RepositoryFactory().CreateRoundRepository())
using (var matchRepository = new RepositoryFactory().CreateMatchRepository())
{
var seasons = seasonRepository.Find(season => season.GameId.Equals(_game.Id));
foreach (var season in seasons)
{
// Get season competitions.
var seasonCompetitions = seasonCompetitionRepository.Find(sc => sc.SeasonId.Equals(season.Id));
foreach (var seasonCompetition in seasonCompetitions)
{
// Delete relations between the season competition and the teams.
var seasonCompetitionTeams = seasonCompetitionTeamRepository.Find(team => team.SeasonCompetitionId.Equals(seasonCompetition.Id));
repository.RegisterDelete(seasonCompetitionTeams);
// Delete rounds and their matches.
var rounds = roundRepository.Find(round => round.SeasonCompetitionId.Equals(seasonCompetition.Id));
foreach (var round in rounds)
{
var matches = matchRepository.Find(match => match.RoundId.Equals(round.Id));
repository.RegisterDelete(matches);
repository.RegisterDelete(round);
}
repository.RegisterDelete(seasonCompetition);
}
repository.RegisterDelete(season);
}
}
}