コード例 #1
0
        // POST api/values
        public void Post([FromBody] TrackerData trackerData)
        {
            if (trackerData.Measurement == null)
            {
                throw new Exception("TrackerData.Measurement is null - Form Body = " + Request.Content.ReadAsStringAsync().Result);
            }
            if (trackerData.Measurement.CoveredResolutions == null)
            {
                trackerData.OverrideMinResolution(Resolution.NA);
                trackerData.Measurement.CoveredResolutions = new List <Resolution>();
            }
            else
            {
                if (trackerData.TimeSlot.Kind == DateTimeKind.Unspecified)
                {
                    trackerData.TimeSlot = DateTime.SpecifyKind(trackerData.TimeSlot, DateTimeKind.Utc);
                }
            }

            foreach (var persister in _persisters)
            {
                try
                {
                    persister.Persist(trackerData);
                }
                catch (Exception ex)
                {
                    _logger.Error(ex.Message, ex);
                }
            }
        }