コード例 #1
0
        public async Task <IActionResult> PutFeed([FromRoute] string id, [FromBody] Feed feed)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (!FeedExists(id))
            {
                return(NotFound());
            }

            feed.Id         = id;
            feed.ModifyTime = DateTime.Now;

            _context.Entry(_feedHelper.Converter(feed)).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!FeedExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetFeed", new { id = feed.Id }, feed));
        }
コード例 #2
0
        public async Task Add(FeedCollection item)
        {
            await _context.Collections.AddAsync(item)
            .ConfigureAwait(false);

            await _context.SaveChangesAsync()
            .ConfigureAwait(false);
        }
コード例 #3
0
        public async Task <IActionResult> Create([Bind("Id,Title")] FeedModel feedModel)
        {
            if (ModelState.IsValid)
            {
                _context.Add(feedModel);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(feedModel));
        }
コード例 #4
0
        public async Task Update(Source item)
        {
            _context.Entry(item).State = EntityState.Modified;
            _context.Sources.Update(item);

            await _context.SaveChangesAsync();
        }
コード例 #5
0
        public async Task MarkFeedItemsAsReadAsync(IEnumerable <int> feedItemIds)
        {
            using var feedContext = new FeedContext(_feedContextOptions);

            foreach (var feedItem in feedContext.FeedItems
                     .Where(fi => feedItemIds.Contains(fi.FeedItemId)))
            {
                feedItem.IsRead = true;
            }

            await feedContext.SaveChangesAsync();
        }
コード例 #6
0
        public async Task <User> Handle(CreateNewFeedUserProfileCommand request, CancellationToken cancellationToken)
        {
            var user = await _feedContext.Users.Where(u => u.UserId.Equals(request.UserId)).FirstOrDefaultAsync(cancellationToken: cancellationToken);

            if (user != null)
            {
                throw new Exception($"User with id {request.UserId} already exists");
            }
            user = new User {
                UserId = request.UserId
            };
            // Add self to list of users the user follows for easier fetching
            user.UpdateUsersFollowingList(user.UserId);
            await _feedContext.Users.AddAsync(user, cancellationToken);

            await _feedContext.SaveChangesAsync();

            return(user);
        }
コード例 #7
0
        public async Task <IActionResult> CreateFeed()
        {
            string content = string.Empty;

            using (Stream receiveStream = HttpContext.Request.Body)
            {
                using (StreamReader reader = new StreamReader(receiveStream))
                {
                    content = reader.ReadToEnd();
                }
            }

            var entry = JsonConvert.DeserializeObject <Feed>(content, new JsonSerializerSettings
            {
                TypeNameHandling = TypeNameHandling.Auto // A6 - Insecure Deserailization - You shoudl instead use TypeNameHandling.None
            });

            _context.Add(entry);
            await _context.SaveChangesAsync();

            return(Ok());
        }
コード例 #8
0
 public async Task <int> SaveChanges()
 {
     return(await feedContext.SaveChangesAsync());
 }
        public async Task Create(TEntity entity)
        {
            await ctx.Set <TEntity>().AddAsync(entity);

            await ctx.SaveChangesAsync();
        }
コード例 #10
0
 public async Task <bool> SaveChangesAsync()
 {
     return(await _context.SaveChangesAsync() > 0);
 }