From d1f437b5058eac0f65c316540d3e9b51729b78f3 Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 16 Mar 2024 16:42:49 +0100 Subject: [PATCH] On the good ways --- src/Dto/AthleteDto.cs | 4 ++-- src/Model2Entities/ActivityRepository.cs | 9 +++------ src/Model2Entities/Extension.cs | 6 ++++++ 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/Dto/AthleteDto.cs b/src/Dto/AthleteDto.cs index bb4b73e..723d01b 100644 --- a/src/Dto/AthleteDto.cs +++ b/src/Dto/AthleteDto.cs @@ -18,8 +18,8 @@ public class UserDto public string? Password { get; set; } public DateTime DateOfBirth { get; set; } public string ProfilePicture { get; set; } = "https://davidalmeida.site/assets/me_avatar.f77af006.png"; - - public LargeImageDto Image { get; set; } + + public LargeImageDto Image { get; set; } = null!; public bool IsCoach { get; set; } } diff --git a/src/Model2Entities/ActivityRepository.cs b/src/Model2Entities/ActivityRepository.cs index 308a245..9d9f6a5 100644 --- a/src/Model2Entities/ActivityRepository.cs +++ b/src/Model2Entities/ActivityRepository.cs @@ -27,9 +27,7 @@ public partial class DbDataManager : IDataManager _logger.LogInformation($"GetActivities with criteria {criteria} and descending {descending}", criteria, descending); var activities = _dataManager.DbContext.ActivitiesSet - .Include(a => a.HeartRates) - .Include(a=>a.Athlete) - .Include(a=> a.DataSource).GetItemsWithFilterAndOrdering(b => true, index, count, criteria, descending).ToModels(); + .IncludeStandardProperties().GetItemsWithFilterAndOrdering(b => true, index, count, criteria, descending).ToModels(); _logger.LogInformation($"Retrieved {activities.Count()} activities"); return await Task.FromResult(activities); @@ -39,7 +37,7 @@ public partial class DbDataManager : IDataManager { _logger.LogInformation($"GetActivityByIdAsync with id {id}", id); - var activity = _dataManager.DbContext.ActivitiesSet.GetItemsWithFilterAndOrdering(b => b.IdActivity == id, 0, 1, ActivityOrderCriteria.None, false).First().ToModel(); + var activity = _dataManager.DbContext.ActivitiesSet.IncludeStandardProperties().GetItemsWithFilterAndOrdering(b => b.IdActivity == id, 0, 1, ActivityOrderCriteria.None, false).First().ToModel(); if (activity != null) _logger.LogInformation($"Retrieved activity with ID {id}"); @@ -147,8 +145,7 @@ public partial class DbDataManager : IDataManager try { _logger.LogInformation($"Getting activities for user with ID {userId}"); var activities = _dataManager.DbContext.ActivitiesSet - .Include(a => a.DataSource) - .GetItemsWithFilterAndOrdering(b => b.AthleteId == userId, index, count, criteria, descending).ToModels(); + .IncludeStandardProperties().GetItemsWithFilterAndOrdering(b => b.AthleteId == userId, index, count, criteria, descending).ToModels(); _logger.LogInformation($"Retrieved {activities.Count()} activities for user with ID {userId}"); return Task.FromResult(activities); } diff --git a/src/Model2Entities/Extension.cs b/src/Model2Entities/Extension.cs index 2991c62..559f776 100644 --- a/src/Model2Entities/Extension.cs +++ b/src/Model2Entities/Extension.cs @@ -93,6 +93,12 @@ public static class Extensions } return query; } + public static IQueryable IncludeStandardProperties(this IQueryable query) + { + return query.Include(a => a.HeartRates) + .Include(a => a.Athlete) + .Include(a => a.DataSource); + } // public static Activity ToModel(this ActivityEntity entity) // { // return new Activity (