中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Razor TagHelper中將Markdown轉換為HTML

發布時間:2021-02-22 17:30:00 來源:億速云 閱讀:136 作者:戴恩恩 欄目:開發技術

這篇文章主要介紹了怎么在Razor TagHelper中將Markdown轉換為HTML,億速云小編覺得不錯,現在分享給大家,也給大家做個參考,一起跟隨億速云小編來看看吧!

Markdown是一種可以使用普通文本編輯器編寫的標記語言,通過簡單的標記語法,它可以使普通文本內容具有一定的格式。

用途

Markdown的語法簡潔明了、學習容易,而且功能比純文本更強,因此有很多人用它寫博客。世界上最流行的博客平臺WordPress和大型CMS如Joomla、Drupal都能很好的支持Markdown。完全采用Markdown編輯器的博客平臺有Ghost和Typecho。

用于編寫說明文檔,并且以“README.MD”的文件名保存在軟件的目錄下面。

除此之外,現在由于我們有了RStudio這樣的神級編輯器,我們還可以快速將Markdown轉化為演講PPT、Word產品文檔、LaTex論文甚至是用非常少量的代碼完成最小可用原型。在數據科學領域,Markdown已經被確立為科學研究規范,極大地推進了動態可重復性研究的歷史進程。

TagHelper

寫一個Razor TagHelper來實現Markdown轉HTML,這里需要使用到CommonMark. NET這個類庫。

namespace ZKEACMS.Message.TagHelps
{
 [HtmlTargetElement("markdown", TagStructure = TagStructure.NormalOrSelfClosing)]
 [HtmlTargetElement(Attributes = "markdown")]
 public class MarkdownTagHelper : TagHelper
 {
  public ModelExpression Content { get; set; }
  public async override Task ProcessAsync(TagHelperContext context, TagHelperOutput output)
  {
   if (output.TagName == "markdown")
   {
    output.TagName = null;
   }
   output.Attributes.RemoveAll("markdown");
   var content = await GetContent(output);
   var markdown = WebUtility.HtmlEncode(WebUtility.HtmlDecode(content));
   var html = CommonMarkConverter.Convert(markdown);
   output.Content.SetHtmlContent(html ?? "");
  }
  private async Task GetContent(TagHelperOutput output)
  {
   if (Content == null)
    return (await output.GetChildContentAsync()).GetContent();
   return Content.Model?.ToString();
  }
 }
}

使用方式

首先要在_ViewImports.cshtml加入這個TagHelper,像這樣

@addTagHelper *, ZKEACMS.Message

然后就可以直接使用了

<markdown>@item.CommentContent</markdown>

以上就是億速云小編為大家收集整理的怎么在Razor TagHelper中將Markdown轉換為HTML,如何覺得億速云網站的內容還不錯,歡迎將億速云網站推薦給身邊好友。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

娄底市| 濮阳县| 景德镇市| 临澧县| 靖安县| 桦南县| 大埔县| 湖州市| 惠东县| 青铜峡市| 桃园县| 漯河市| 渝中区| 吉水县| 彭州市| 长汀县| 永仁县| 赞皇县| 洛阳市| 裕民县| 遂川县| 江陵县| 贵溪市| 神农架林区| 广南县| 陇南市| 仁怀市| 苍梧县| 临清市| 昔阳县| 东明县| 绍兴县| 克什克腾旗| 额敏县| 克拉玛依市| 乐安县| 惠安县| 香格里拉县| 原阳县| 宜春市| 江川县|