/// <summary> /// /// </summary> /// <param name="groupID"></param> /// <returns></returns> public async Task <SOSTrackInfo> GetSOSTrackCountByGroupId(int groupID) { SOSTrackInfo _sosTrackCount = new SOSTrackInfo(); var liveusers = (from loc in _guardianContext.LiveSessions join grp in _guardianContext.GroupMemberships on loc.ProfileID equals grp.ProfileID where grp.GroupID == groupID select new { ProfileID = loc.ProfileID, IsSOS = loc.IsSOS, }).AsNoTracking().ToListAsync(); var liveUsers = await liveusers; _sosTrackCount.SOSCount = liveUsers.Count(x => x.IsSOS); _sosTrackCount.TrackCount = liveUsers.Count(x => !x.IsSOS); liveUsers.ForEach(liveUser => { if (liveUser.IsSOS) { _sosTrackCount.SOSProfileIds += liveUser.ProfileID + "'"; } else { _sosTrackCount.TotalProfileIds += liveUser.ProfileID + "'"; } }); return(_sosTrackCount); }
public static ServiceModel.SOSTrackCounts ConvertToSOSTrackCounts(this DTOModel.SOSTrackInfo sosTrackInfo) { return(AutoMapper.Mapper.Map <ServiceModel.SOSTrackCounts>(sosTrackInfo)); }