public void MarkAsSolution(MarkAsSolutionBadgeViewModel markAsSolutionBadgeViewModel) { using (var unitOfwork = UnitOfWorkManager.NewUnitOfWork()) { try { var post = _postService.Get(markAsSolutionBadgeViewModel.PostId); var databaseUpdateNeeded = _badgeService.ProcessBadge(BadgeType.MarkAsSolution, post.User) | _badgeService.ProcessBadge(BadgeType.MarkAsSolution, post.Topic.User); if (databaseUpdateNeeded) { unitOfwork.Commit(); } } catch (Exception ex) { unitOfwork.Rollback(); LoggingService.Error(ex); } } }
public void MarkAsSolution(MarkAsSolutionBadgeViewModel markAsSolutionBadgeViewModel) { using (var unitOfwork = UnitOfWorkManager.NewUnitOfWork()) { try { var post = ServiceFactory.PostService.Get(markAsSolutionBadgeViewModel.PostId); var postMember = ServiceFactory.MemberService.Get(post.MemberId); var topicMember = ServiceFactory.MemberService.Get(post.Topic.MemberId); var databaseUpdateNeeded = ServiceFactory.BadgeService.ProcessBadge(BadgeType.MarkAsSolution, postMember) | ServiceFactory.BadgeService.ProcessBadge(BadgeType.MarkAsSolution, topicMember); if (databaseUpdateNeeded) { unitOfwork.Commit(); } } catch (Exception ex) { unitOfwork.Rollback(); LogError(ex); } } }