コード例 #1
0
        public async Task <IHttpActionResult> Actigraphy()
        {
            // https://stackify.com/understanding-asp-net-performance-for-reading-incoming-data/
            string data = await Request.Content.ReadAsStringAsync();

            var viewModels = Newtonsoft.Json.JsonConvert.DeserializeObject <IEnumerable <ActivityViewModel> >(data);

            if (viewModels == null || !viewModels.Any())
            {
                return(BadRequest("Something went wrong. Empty request."));
            }

            string userId = User.Identity.GetUserId();

            try
            {
                BulkCommands.StoreActivities(
                    viewModels.Select(m =>
                {
                    m.UserId = userId;
                    return(m);
                })
                    .ToList());
            }
            catch (Exception e)
            {
                _service.WriteBugReport(userId, e.Message);
            }
            return(Ok());
        }