這篇文章主要講解了“如何實(shí)現(xiàn)asp.net在非MVC中使用Razor模板引擎”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“如何實(shí)現(xiàn)asp.net在非MVC中使用Razor模板引擎”吧!
成都創(chuàng)新互聯(lián)是少有的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、營銷型企業(yè)網(wǎng)站、微信小程序開發(fā)、手機(jī)APP,開發(fā)、制作、設(shè)計(jì)、賣友情鏈接、推廣優(yōu)化一站式服務(wù)網(wǎng)絡(luò)公司,自2013年起,堅(jiān)持透明化,價(jià)格低,無套路經(jīng)營理念。讓網(wǎng)頁驚喜每一位訪客多年來深受用戶好評(píng)具體分析如下:
模板引擎介紹
Razor、Nvelocity、Vtemplate,Razor一般在MVC項(xiàng)目中使用,這里介紹在非MVC項(xiàng)目中的用法。
如何在非MVC中使用Razor模板引擎
借助于開源的RazorEngine,我們可以在非asp.net mvc項(xiàng)目中使用Razor引擎,甚至在控制臺(tái)、WinForm項(xiàng)目中都可以使用Razor(自己開發(fā)代碼生成器)
如何使用Razor
環(huán)境搭建:
① 添加引用RazorEngine.dll
② 創(chuàng)建cshtml
新建一個(gè)html,改名為cshtml。注意:通過 添加--html頁再改成cshtml的方式打開是么有自動(dòng)提示的,必須關(guān)掉該文件重新打開。推薦使用,添加--新建項(xiàng)--html頁在這里直接改成cshtml創(chuàng)建cshtml文件,直接可用自動(dòng)提示。
開始使用:
1. 在cshtml中使用Razor語法
Razor中@后面跟表達(dá)式表示在這個(gè)位置輸出表達(dá)式的值,模板中Model為傳遞給模板的對(duì)象。
@{}中為C#代碼,C#代碼還可以和html代碼混排
2. 在一般處理程序中使用Razor:
Razor對(duì)象會(huì)使用Parse方法將讀取到的cshtml解析為一個(gè)程序集,再生成html。
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/html"; string fullPath=context.Server.MapPath(@"~/Razordemo/Razor1.cshtml"); //拿到cshtml文件路徑 string cshtml=File.ReadAllText(fullPath);//得到文件內(nèi)容 string html = Razor.Parse(cshtml);//解析cshtml文件解析得到html context.Response.Write(html); }
3. 如何在cshtml文件讀取對(duì)象的值
Razor.Parse()方法的另一個(gè)重載就是傳進(jìn)一個(gè)Model對(duì)象,在cshtml文件中通過Model就可以點(diǎn)出來對(duì)象的屬性。
在一般處理程序中解析:
Dog dog = new Dog(); dog.Id = 100; dog.Height = 120; string html = Razor.Parse(cshtml, dog); context.Response.Write(html);
在cshtml中讀取對(duì)象屬性:
狗狗信息:
Id:@Model.Id
身高:@Model.Height
感謝各位的閱讀,以上就是“如何實(shí)現(xiàn)asp.net在非MVC中使用Razor模板引擎”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)如何實(shí)現(xiàn)asp.net在非MVC中使用Razor模板引擎這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!