public async ValueTask <IActionResult> Create(string id) { if (string.IsNullOrEmpty(id)) { return(NotFound()); } var validate = (await _siteService.LoadSiteSettingsAsync())?.As <PublishSetting>()?.ListContentItemIds.Contains(id) ?? false; if (!validate) { return(NotFound()); } var contentItem = await _contentManager.NewAsync(PublishContent); var shape = await _contentItemDisplayManager.UpdateEditorAsync(contentItem, _updateModelAccessor.ModelUpdater, true); var model = new PublishContentViewModel() { TargetId = id, Shape = shape }; return(View(model)); }
public async ValueTask <IActionResult> CreatePost(PublishContentViewModel model) { if (string.IsNullOrEmpty(model?.TargetId)) { return(NotFound()); } var validate = (await _siteService.LoadSiteSettingsAsync())?.As <PublishSetting>()?.ListContentItemIds.Contains(model.TargetId) ?? false; if (!validate) { return(NotFound()); } var contentItem = await _contentManager.NewAsync(PublishContent); contentItem.Alter <ContainedPart>(x => { x.ListContentItemId = model.TargetId; }); contentItem.Owner = User.Identity.Name; var shape = await _contentItemDisplayManager.UpdateEditorAsync(contentItem, _updateModelAccessor.ModelUpdater, true); if (!ModelState.IsValid) { await _session.CancelAsync(); return(View("Create", model)); } await _contentManager.CreateAsync(contentItem, VersionOptions.Draft); await _contentManager.PublishAsync(contentItem); _notifier.Success(H["发布成功"]); return(RedirectToAction("index")); }