public CommonResult EditNews(EditNewsRequest request) { var data = _newsProvider.GetById(request.Id); if (request.Title.NotNullNorEmpty()) { data.Title = request.Title; } if (request.TagsString.NotNullNorEmpty() && GetTagsFromTagsString(request.TagsString).Any()) { data.Tags = GetTagsFromTagsString(request.TagsString); } var contentData = new NewsContentData { Id = request.Id, Content = request.Content }; if (request.Image != null) { var saveNewsImageResult = _newsProvider.SaveImageAsync(request.Image); data.ImageName = saveNewsImageResult.Result.ImagePath; } _newsProvider.SaveDataAsync(data); _newsProvider.SaveContentAsync(contentData); return CommonResult.Success(); }
public async Task<CommonResult<CreateNewsResult>> CreateNewsAsync(CreateNewsRequest request) { var newsId = GetNewsId(); var saveNewsImageResult = await _newsProvider.SaveImageAsync(request.Image); var data = new NewsData { Id = newsId, Author = request.Author, AuthorUserName = request.AuthorUserName, Title = request.Title, Date = DateTime.Now, ImageName = saveNewsImageResult.ImagePath, Tags = GetTagsFromTagsString(request.TagsString), }; var contentData = new NewsContentData { Id = newsId, Content = request.Content }; await _newsProvider.SaveDataAsync(data); await _newsProvider.SaveContentAsync(contentData); return CommonResult<CreateNewsResult>.Success(new CreateNewsResult { Id = newsId }); }
public async Task SaveContentAsync(NewsContentData data) { var fileName = $"{data.Id}_content.md"; var path = Path.Combine(_newsPath, fileName); await SaveFileAsync(path, data.Content); }