public ActionResult Edit(int id) { Blog blog = repository.Find(id); if (blog == null) { return(HttpNotFound()); } BlogForm viewModel = new BlogForm(blog); return(View(viewModel)); }
/// <summary> /// 采集微软RSS博客 /// </summary> /// <param name="blogs"></param> /// <param name="log"></param> static async Task SaveMSBlogs(List <RssEntity> blogs, ILogger log) { string subKey = Environment.GetEnvironmentVariable("GoogleTranslateKey"); var translateHelper = new TranslateTextHelper(subKey); log.LogInformation("采集微软RSS:" + blogs.Count + "条;\r\n" + string.Join(";\r\n", blogs.Select(b => b.Title).ToArray())); // blogs去重 using (var hc = new HttpClient()) { var response = await hc.PostAsJsonAsync(baseApi + "admin/tools/UniqueBlogs", blogs.Select(b => b.Title).ToList()); var json = await response.Content.ReadAsStringAsync(); var uniqueBlogs = JsonConvert.DeserializeObject <List <string> >(json); if (uniqueBlogs == null) { log.LogInformation("没有新增内容"); return; } blogs = blogs.Where(b => uniqueBlogs.Any(u => b.Title.Equals(u)) && b.Title != null) .ToList(); log.LogInformation("新增条数:" + uniqueBlogs?.Count + "\r\n" + string.Join(";\r\n", blogs.Select(b => b.Title).ToArray())); if (blogs.Count > 0) { var intelligence = new IntelligenceHelper(); foreach (var item in blogs) { try { var thumbnail = item.ThumbUrl; if (string.IsNullOrEmpty(item.ThumbUrl)) { thumbnail = await intelligence.GetImageFromTextAsync(item.Title); } //var thumbnail = ""; var blogForm = new BlogForm { ContentEn = item.Content, AuthorName = item.Author, Categories = item.Categories, Content = translateHelper.TranslateText(item.Content), Summary = translateHelper.TranslateText(item.Description), Title = translateHelper.TranslateText(item.Title), TitleEn = item.Title, Link = item.Link, CreatedTime = item.CreateTime, Thumbnail = thumbnail }; var tobeAddBlogs = new List <BlogForm> { blogForm }; response = await hc.PostAsJsonAsync(baseApi + "admin/tools/AddRssBlogs", tobeAddBlogs); if (response.IsSuccessStatusCode) { var result = await response.Content.ReadAsStringAsync(); log.LogInformation("成功:" + item.Title); } else { log.LogError(response.StatusCode + response.ReasonPhrase); } } catch (Exception e) { log.LogError(e.Message + e.StackTrace + e.InnerException?.Message); } } } } }