欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在ASP.NET Core Mvc集成MarkDown的方法

 更新時(shí)間:2020年03月05日 15:01:10   作者:張子浩  
這篇文章主要介紹了在ASP.NET Core Mvc集成MarkDown的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

  這幾天在做文章編輯,首先就想到了markdown,它比其它的都要新,而且很好用,相對(duì)于其它的html編輯器,好久不更新,要好得多,哦~對(duì)了我現(xiàn)在已經(jīng)用上新版的Edge了,經(jīng)過很多朋友測試,性能比谷歌瀏覽器都要好很多,并且資源消耗也相對(duì)來說小。

一.前提

  好吧,言歸正傳,你首先需要下載MarkDown的相關(guān)樣式腳本資源,下載完畢之后拖放你的ASP.NET Core Mvc 項(xiàng)目中的wwwroot中。

二.初始化

在頁面中我們理所當(dāng)然需要引用css 腳本資源,隨后調(diào)用它的初始化方法。

<script src="~/js/jquery-1.10.2.min.js"></script>
<link href="~/Lib/MarkDown/css/editormd.css" rel="external nofollow" rel="stylesheet" />
<link href="~/Lib/MarkDown/css/editormd.preview.css" rel="external nofollow" rel="stylesheet" />
<script src="~/Lib/MarkDown/js/editormd.js"></script>
<link href="~/lib/bootstrap/dist/css/bootstrap.min.css" rel="external nofollow" rel="stylesheet" />

我們的Html部分也很簡單,它只需要一個(gè)Textarea盒子。

 <div id="test-editormd">
    <textarea id="articleContent" style="display: none;">@Html.Raw(html)</textarea>
  </div>

調(diào)用markdown的初始化方法也很簡單,我們通常這么做。

$(function () {
    testEditor = editormd("test-editormd", {
      width: "99%",
      height: 640,
      syncScrolling: "single",
      path: "/Lib/MarkDown/lib/",
      saveHTMLToTextarea: true,
      emoji: true
    });
});

到了這里,我就會(huì)問?我如何獲取我的html呢?這很簡單只要通過testEditor.getHTML()方法就可以了,那么你一定就會(huì)知道如何獲取markdown了getMarkdown(),這兩個(gè)方法取決你想保存什么,如果你是保存了html,那么你就無需通過asp.net core htmlhelper 的@Html.Raw來進(jìn)行轉(zhuǎn)義,如果是markdown,您當(dāng)然需要這么干。

三.優(yōu)化

有時(shí)候我們想要上傳咱們自己服務(wù)器的圖片,經(jīng)過發(fā)現(xiàn),這個(gè)image上傳的彈窗就在/lib/MarkDown/plugins/image-dialog中,我們仔細(xì)發(fā)現(xiàn)就可以進(jìn)行改造。

好的,這一切都非常簡單了,你自己發(fā)揮,我們只要保存成功,就很簡單了,你可以操作這個(gè)js的任何東西,只要不破壞它的btn相關(guān)方法。隨后,你可以寫一個(gè)上傳圖片的Api來操作。

public class FileUploadController : Controller
  {
    private IWebHostEnvironment en;
    public FileUploadController(IWebHostEnvironment en) { this.en = en; }
    public IActionResult Index() { return View(); }
    [HttpPost]
    public async Task<IActionResult> UploadF()
    {
      var files = Request.Form.Files;
      string filename = files[0].FileName;
      string fileExtention = System.IO.Path.GetExtension(files[0].FileName);
      string path = Guid.NewGuid().ToString() + fileExtention;
      string basepath = en.WebRootPath;
      string path_server = "/upfile/" + path;
      using (FileStream fstream = new FileStream(basepath+path_server, FileMode.OpenOrCreate, FileAccess.ReadWrite))
      // using (FileStream fstream = System.IO.File.Create(newFile)) //兩種都可以使用
      {
        await files[0].CopyToAsync(fstream);
      }
      return Ok(new { code = 200, msg = "上傳成功!" ,filepath = path_server});
    }
  }

在我的項(xiàng)目中,我一般喜歡截取文章中的第一個(gè)圖片作為的banner部分,ok這一切只需要一個(gè)helper。

public static string[] GetHtmlImageUrlList(string sHtmlText)
    {
      // 定義正則表達(dá)式用來匹配 img 標(biāo)簽  
      Regex regImg = new Regex(@"<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>", RegexOptions.IgnoreCase);
      // 搜索匹配的字符串  
      MatchCollection matches = regImg.Matches(sHtmlText);
      int i = 0;
      string[] sUrlList = new string[matches.Count];
      // 取得匹配項(xiàng)列表  
      foreach (Match match in matches)
        sUrlList[i++] = match.Groups["imgUrl"].Value;
      return sUrlList;
    }

到此這篇關(guān)于在ASP.NET Core Mvc集成MarkDown的方法的文章就介紹到這了,更多相關(guān)ASP.NET Core Mvc集成MarkDown內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • HttpWebRequest的常見錯(cuò)誤使用TcpClient可避免

    HttpWebRequest的常見錯(cuò)誤使用TcpClient可避免

    有時(shí)使用HttpWebRequest對(duì)象會(huì)出現(xiàn)錯(cuò)誤有三種服務(wù)器提交了協(xié)議沖突/基礎(chǔ)連接已經(jīng)關(guān)閉:連接被意外關(guān)閉/無法發(fā)送具有此謂詞類型的內(nèi)容正文,感興趣的朋友可以參考下本文
    2013-02-02
  • ASP.NET編程獲取網(wǎng)站根目錄方法小結(jié)

    ASP.NET編程獲取網(wǎng)站根目錄方法小結(jié)

    這篇文章主要介紹了ASP.NET編程獲取網(wǎng)站根目錄方法,較為詳細(xì)的分析了ASP.NET針對(duì)網(wǎng)站目錄及物理路徑的操作技巧,并給出了實(shí)例予以總結(jié),需要的朋友可以參考下
    2015-11-11
  • Win10 IIS 安裝.net 4.5的方法

    Win10 IIS 安裝.net 4.5的方法

    這篇文章主要介紹了Win10 IIS 安裝及.net 4.5及Win10安裝IIS并配置ASP.NET 4.0的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • ASP.NetCore使用Swagger實(shí)戰(zhàn)

    ASP.NetCore使用Swagger實(shí)戰(zhàn)

    這篇文章主要介紹了ASP.NetCore使用Swagger實(shí)戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • asp.net html控件的File控件實(shí)現(xiàn)多文件上傳實(shí)例分享

    asp.net html控件的File控件實(shí)現(xiàn)多文件上傳實(shí)例分享

    asp.net中html控件的File控件實(shí)現(xiàn)多文件上傳簡單實(shí)例,開發(fā)工具vs2010使用c#語言,感興趣的朋友可以了解下,必定是多文件上傳值得學(xué)習(xí),或許本文所提供的知識(shí)點(diǎn)對(duì)你有所幫助
    2013-02-02
  • asp.net中日歷函數(shù)Calendar的使用方法

    asp.net中日歷函數(shù)Calendar的使用方法

    calendar 控件用于在瀏覽器中顯示日歷,該控件可顯示某個(gè)月的日歷,允許用戶選擇日期,也可以跳到前一個(gè)或下一個(gè)月
    2011-05-05
  • .net core如何使用Redis發(fā)布訂閱

    .net core如何使用Redis發(fā)布訂閱

    本篇文章主要介紹了.net core如何使用Redis發(fā)布訂閱,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • ASP.NET Core 數(shù)據(jù)保護(hù)(Data Protection)中篇

    ASP.NET Core 數(shù)據(jù)保護(hù)(Data Protection)中篇

    這篇文章主要為大家再一次介紹了ASP.NET Core 數(shù)據(jù)保護(hù)(Data Protection),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • .Net中的Http請(qǐng)求調(diào)用詳解(Post與Get)

    .Net中的Http請(qǐng)求調(diào)用詳解(Post與Get)

    在我們服務(wù)端調(diào)用第三方接口時(shí),如:支付寶,微信支付,我們服務(wù)端需要模擬http請(qǐng)求,下面這篇文章主要給大家介紹了關(guān)于.Net中Http請(qǐng)求調(diào)用(Post與Get)的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • ASP.NET MVC中的AJAX應(yīng)用

    ASP.NET MVC中的AJAX應(yīng)用

    這篇文章主要介紹了ASP.NET MVC中的AJAX應(yīng)用的相關(guān)資料,需要的朋友可以參考下
    2014-10-10

最新評(píng)論