public async Task <Maybe <Publisher> > GetPublisher(League league, int year, FantasyCriticUser user) { var query = new { leagueID = league.LeagueID, year, userID = user.UserID }; using (var connection = new MySqlConnection(_connectionString)) { PublisherEnity publisherEntity = await connection.QuerySingleOrDefaultAsync <PublisherEnity>( "select * from tblpublisher where tblpublisher.LeagueID = @leagueID and tblpublisher.Year = @year and tblpublisher.UserID = @userID;", query); if (publisherEntity == null) { return(Maybe <Publisher> .None); } IReadOnlyList <PublisherGame> domainGames = await GetPublisherGames(publisherEntity.PublisherID, publisherEntity.Year); var domainPublisher = publisherEntity.ToDomain(league, user, domainGames); return(domainPublisher); } }
public async Task <Maybe <Publisher> > GetPublisher(Guid publisherID) { var query = new { publisherID }; using (var connection = new MySqlConnection(_connectionString)) { PublisherEnity publisherEntity = await connection.QuerySingleOrDefaultAsync <PublisherEnity>( "select * from tblpublisher where tblpublisher.PublisherID = @publisherID;", query); if (publisherEntity == null) { return(Maybe <Publisher> .None); } IReadOnlyList <PublisherGame> domainGames = await GetPublisherGames(publisherEntity.PublisherID, publisherEntity.Year); var user = await _userStore.FindByIdAsync(publisherEntity.UserID.ToString(), CancellationToken.None); var league = await GetLeagueByID(publisherEntity.LeagueID); var domainPublisher = publisherEntity.ToDomain(league.Value, user, domainGames); return(domainPublisher); } }