Example #1
0
 public DResult<Models.Wiki> AddWiki(string name, string groupId, string creatorId, string desc)
 {
     if (Wikis.Exists(w => w.Name == name))
         return DResult.Error<Models.Wiki>("词条已存在!");
     var group = Groups.SingleOrDefault(g => g.Id == groupId);
     if (group == null)
         return DResult.Error<Models.Wiki>("分组不存在!");
     var wiki = new Models.Wiki
     {
         Id = CombHelper.Guid16,
         Name = name,
         CreatorId = creatorId,
         GroupId = groupId,
         Hots = 0,
         Sort = 0,
         Description = desc,
         CreateTime = Clock.Now
     };
     wiki.Sort = Wikis.Max(w => w.Sort, w => w.GroupId == groupId) + 1;
     var result = UnitOfWork.Transaction(() =>
     {
         Wikis.Insert(wiki);
         group.WikiCount++;
         group.LastUpdateTime = Clock.Now;
         Groups.Update(group);
     });
     return result > 0 ? DResult.Succ(wiki) : DResult.Error<Models.Wiki>("添加词条失败!");
 }
Example #2
0
        public DResult <Models.Wiki> AddWiki(string name, string groupId, string creatorId, string desc)
        {
            if (Wikis.Exists(w => w.Name == name))
            {
                return(DResult.Error <Models.Wiki>("词条已存在!"));
            }
            var group = Groups.SingleOrDefault(g => g.Id == groupId);

            if (group == null)
            {
                return(DResult.Error <Models.Wiki>("分组不存在!"));
            }
            var wiki = new Models.Wiki
            {
                Id          = CombHelper.Guid16,
                Name        = name,
                CreatorId   = creatorId,
                GroupId     = groupId,
                Hots        = 0,
                Sort        = 0,
                Description = desc,
                CreateTime  = Clock.Now
            };

            wiki.Sort = Wikis.Max(w => w.Sort, w => w.GroupId == groupId) + 1;
            var result = UnitOfWork.Transaction(() =>
            {
                Wikis.Insert(wiki);
                group.WikiCount++;
                group.LastUpdateTime = Clock.Now;
                Groups.Update(group);
            });

            return(result > 0 ? DResult.Succ(wiki) : DResult.Error <Models.Wiki>("添加词条失败!"));
        }
Example #3
0
 private async Task SetNameAsync(int wikiId, string newName)
 {
     Models.Wiki wiki = await(from inWiki in _db.Wiki
                              where inWiki.Id == wikiId
                              select inWiki).SingleAsync();
     wiki.PageName = newName;
     await _db.SaveChangesAsync();
 }
Example #4
0
 internal static Wiki Map(Models.Wiki wiki)
 {
     return(new Storing.Wiki()
     {
         PageName = wiki.PageName,
         Url = wiki.Url,
         HtmlDescription = wiki.WikiHtmlDescription?.HtmlDescription,
         MdDescription = wiki.WikiMdDescription?.MdDescription
     });
 }