示例#1
0
        private async Task UpdatePositionAsync(PositionUpdate source)
        {
            var position = await _context.Positions.SingleOrDefaultAsync(p => p.Id == source.Id);

            if (position == null)
            {
                position = new Position()
                {
                    Id = source.Id
                };
                _context.Positions.Add(position);
            }

            position.Category  = source.Category;
            position.Nickname  = source.Nickname;
            position.Latitude  = source.Latitude;
            position.Longitude = source.Longitude;
            position.Altitude  = source.Altitude;
            position.Timestamp = source.Timestamp;

            position.Heading  = 0;
            position.Accuracy = 0;
            position.Speed    = 0;

            position.History.Add(new DAL.PositionHistory()
            {
                Altitude  = position.Altitude,
                Timestamp = position.Timestamp,
                Latitude  = position.Latitude,
                Longitude = position.Longitude,

                Heading  = 0,
                Accuracy = 0,
                Speed    = 0
            });

            await _context.SaveChangesAsync();
        }
 public async Task SaveAsync() => await context.SaveChangesAsync();