public void AlertFriends(IList <ApplicationUser> friends, UsersBlogs record) { foreach (var friend in friends) { if (Connections.TryGetValue(friend.UserName, out var connectionIds)) { foreach (var connectionId in connectionIds) { connectionId.Value.NotifyBlog?.Invoke(record); } } } }
public void ApplyBlog(string text) { var blog = new BlogRecord { Text = text, PublicationDate = DateTime.UtcNow }; var user = _dbContext.Users.FirstOrDefault(u => u.UserName == _httpContext.HttpContext.User.Identity.Name); _dbContext.BlogsRecords.Add(blog); var userblogs = new UsersBlogs { Blog = blog, User = user }; var friends = _friendshipService.GetFriends(); _connectionService.AlertFriends(friends, userblogs); _dbContext.UsersBlogs.Add(userblogs); _dbContext.SaveChangesAsync(); }