コード例 #1
0
        protected virtual MyLinkDTO GetLinkDto(int contentId, string queryString)
        {
            if (queryString == null)
            {
                queryString = string.Empty;
            }

            var model = new MyLinkDTO
            {
                ContentId   = contentId,
                UserId      = _intranetMemberService.GetCurrentMember().Id,
                QueryString = queryString
            };

            if (_myLinksHelper.IsActivityLink(contentId))
            {
                model.ActivityId = GetActivityLinkFromQuery(queryString);
            }

            if (_myLinksHelper.IsGroupPage(contentId))
            {
                model.ActivityId = GetGroupLinkFromQuery(queryString);
            }

            return(model);
        }
コード例 #2
0
        public Guid Create(MyLinkDTO model)
        {
            var entity = new MyLink
            {
                Id          = Guid.NewGuid(),
                UserId      = model.UserId,
                ContentId   = model.ContentId,
                QueryString = model.QueryString.Trim('?'),
                CreatedDate = DateTime.UtcNow,
                ActivityId  = model.ActivityId
            };

            _myLinksRepository.Add(entity);
            return(entity.Id);
        }
コード例 #3
0
        protected virtual MyLinkDTO GetLinkDTO(int contentId, string queryString)
        {
            var model = new MyLinkDTO
            {
                ContentId   = contentId,
                UserId      = _intranetMemberService.GetCurrentMember().Id,
                QueryString = queryString
            };

            if (IsActivityLink(contentId))
            {
                model.ActivityId = GetActivityLinkFromQuery(queryString);
            }

            if (IsGroupPage(contentId))
            {
                model.ActivityId = GetActivityLinkFromQuery(queryString);
            }

            return(model);
        }
コード例 #4
0
 public MyLinksDuplicatedException(MyLinkDTO model)
     : base($"Can not add myLink with content {model.ContentId} for {model.UserId} and querString {model.QueryString}, becase it's already existed")
 {
 }
コード例 #5
0
        public async Task <MyLink> GetAsync(MyLinkDTO model)
        {
            var links = await _myLinksRepository.FindAllAsync(link => link.UserId == model.UserId && link.ContentId == model.ContentId);

            return(links.SingleOrDefault(l => IsQueryStringEqual(model.QueryString, l.QueryString)));
        }
コード例 #6
0
        public MyLink Get(MyLinkDTO model)
        {
            var links = _myLinksRepository.FindAll(link => link.UserId == model.UserId && link.ContentId == model.ContentId);

            return(links.SingleOrDefault(l => IsQueryStringEqual(model.QueryString, l.QueryString)));
        }
コード例 #7
0
 public MyLinksNotExistedException(MyLinkDTO model)
     : base($"Can not delete myLink with content {model.ContentId} for {model.UserId} and querString {model.QueryString}, becase it's not existed")
 {
 }