Пример #1
0
        public string AddPost(string blogid, string username, string password, Post post, bool publish)
        {
            EnsureUser(username, password).Wait();

            if (post.categories == null)
            {
                throw new MetaWeblogException("Failed to specify categories");
            }

            var newStory = new BlogStory();

            try
            {
                newStory.Title         = post.title;
                newStory.Body          = post.description;
                newStory.DatePublished = post.dateCreated == DateTime.MinValue ? DateTime.UtcNow : post.dateCreated;
                if (post.categories != null)
                {
                    newStory.Categories = string.Join(",", post.categories);
                }
                newStory.IsPublished = publish;
                newStory.Slug        = newStory.GetStoryUrl();
                newStory.UniqueId    = newStory.Slug;

                _repo.AddStory(newStory);
                _repo.SaveAll();
            }
            catch (Exception)
            {
                throw new MetaWeblogException("Failed to save the post.");
            }
            return(newStory.Id.ToString());
        }
Пример #2
0
    public async Task<string> AddPostAsync(string blogid, string username, string password, Post post, bool publish)
    {
      await EnsureUser(username, password);

      if (post.categories == null) throw new MetaWeblogException("Failed to specify categories");

      var newStory = new BlogStory();
      try
      {
        newStory.Title = post.title;
        newStory.Body = post.description;
        newStory.DatePublished = post.dateCreated == DateTime.MinValue ? DateTime.UtcNow : post.dateCreated;
        if (post.categories != null) newStory.Categories = string.Join(",", post.categories);
        newStory.IsPublished = publish;
        newStory.Slug = newStory.GetStoryUrl();
        newStory.UniqueId = newStory.Slug;

        _repo.AddStory(newStory);
        if (await _repo.SaveAllAsync())
        {
          return newStory.Id.ToString();

        }
      }
      catch (Exception)
      {
        _logger.LogError("Failed to add new Post");
      }

      throw new MetaWeblogException("Failed to save the post.");
    }