<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        asp.net模板引擎Razor調用外部方法用法實例

        來源:懂視網 責編:小采 時間:2020-11-27 22:38:31
        文檔

        asp.net模板引擎Razor調用外部方法用法實例

        asp.net模板引擎Razor調用外部方法用法實例:本文實例講述了asp.net模板引擎Razor調用外部方法用法。分享給大家供大家參考。具體如下: 首先使用Razor的步驟:讀取cshtml、解析cshtml同時指定cacheName。 而這個步驟是重復的,為了遵循DRY原則,將這段代碼封裝為一個RazorHelper()方法
        推薦度:
        導讀asp.net模板引擎Razor調用外部方法用法實例:本文實例講述了asp.net模板引擎Razor調用外部方法用法。分享給大家供大家參考。具體如下: 首先使用Razor的步驟:讀取cshtml、解析cshtml同時指定cacheName。 而這個步驟是重復的,為了遵循DRY原則,將這段代碼封裝為一個RazorHelper()方法

        本文實例講述了asp.net模板引擎Razor調用外部方法用法。分享給大家供大家參考。具體如下:

        首先使用Razor的步驟:讀取cshtml、解析cshtml同時指定cacheName。

        而這個步驟是重復的,為了遵循DRY原則,將這段代碼封裝為一個RazorHelper()方法

        public class RazorHelper
        {
         public static string ParseRazor(HttpContext context, string csHtmlVirtualPath, object model)
         {
         string fullPath = context.Server.MapPath(csHtmlVirtualPath);
         string cshtml = File.ReadAllText(fullPath);
         string cacheName = fullPath + File.GetLastWriteTime(fullPath);
         string html = Razor.Parse(cshtml,model,cacheName);
         return html;
         }
        }
        
        

        如何在cshtml中用Razor調用外部方法

        1. 首先在cshtml文件引用test1和test2所在類的命名空間

        @using WebTest1.RazorDemo;<!--test1和test2所在類的命名空間-->
        <!DOCTYPE html>
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
         <title></title>
        </head>
        <body>
         @RazorTest.test1()<br />
         @RazorTest.test2()
        </body>
        </html>
        
        

        2. 在一般處理程序中調用RazorHelper.ParseRazor(),將讀取到的cshtml文件返回給客戶

        public void ProcessRequest(HttpContext context)
        {
         context.Response.ContentType = "text/html";
         string html = RazorHelper.ParseRazor(context, @"~/Razordemo/Razor2.cshtml", null);
         context.Response.Write(html); 
        }
        
        

        為什么要在cshtml文件中調用方法呢?

        先看一個繁瑣的,在cshtml中插入checkbox的處理

        1. 一般處理程序

        bool gender = true;
        string html = RazorHelper.ParseRazor(context, @"~/Razordemo/Razor2.cshtml", new { Gender = gender });
        
        

        2. cshtml文件中處理checkbox的checked狀態

        <input type="checkbox" @(Model.Gender?"checked":"") />
        <!--加括號改變優先級,否則編譯器會將點Model后面的表達式當字符串處理-->

        是不是很亂?處女座不能忍。

        我們知道方法可以封裝一些重復代碼,調用方法讓cshtml頁面更簡潔。

        舉個例子:

        要在cshtml頁面插入一個checkbox。

        1. 首先封裝一個CheckBox()方法

        public static RawString CheckBox(string name, string id, bool isChecked)
        {
         StringBuilder sb = new StringBuilder();
         sb.Append("<input type='checkbox' id='").Append(id).Append("' ").Append("name='").Append(name).Append("' ");
         if (isChecked)
         {
         sb.Append("checked");
         }
         sb.Append("/>");
         return new RawString(sb.ToString());
        }
        
        

        2. 在一般處理程序中讀取和解析cshtml文件

        string html = RazorHelper.ParseRazor(context, @"~/Razordemo/Razor2.cshtml", null);
        context.Response.Write(html);
        
        

        3. 在cshtml文件中調用CheckBox()方法,將checkbox插入cshtml

        @using WebTest1.RazorDemo;<!--test1和test2所在類的命名空間-->
        <!DOCTYPE html>
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
         <title></title>
        </head>
        <body>
         @RazorTest.CheckBox("apple","apple",true)
        </body>
        </html>
        
        

        希望本文所述對大家的asp.net程序設計有所幫助。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        asp.net模板引擎Razor調用外部方法用法實例

        asp.net模板引擎Razor調用外部方法用法實例:本文實例講述了asp.net模板引擎Razor調用外部方法用法。分享給大家供大家參考。具體如下: 首先使用Razor的步驟:讀取cshtml、解析cshtml同時指定cacheName。 而這個步驟是重復的,為了遵循DRY原則,將這段代碼封裝為一個RazorHelper()方法
        推薦度:
        標簽: 模板 實例 引擎
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产免费AV片在线播放唯爱网| 精品国产福利尤物免费| 99久久精品免费精品国产| 亚洲午夜福利在线观看| 一级毛片在线免费播放| 亚洲福利在线播放| 一级毛片在线免费视频| 国产精品V亚洲精品V日韩精品| 未满十八私人高清免费影院| 又色又污又黄无遮挡的免费视| 美国免费高清一级毛片| 国产又大又黑又粗免费视频| 色天使色婷婷在线影院亚洲| 男人的天堂亚洲一区二区三区 | 无码少妇一区二区浪潮免费 | 亚洲自国产拍揄拍| 日本妇人成熟免费中文字幕| 亚洲综合中文字幕无线码| 毛片高清视频在线看免费观看| 亚洲AV综合色区无码二区偷拍 | 国产大片线上免费看| 国产精品亚洲AV三区| 国产日产亚洲系列最新| 少妇性饥渴无码A区免费| 色播亚洲视频在线观看| 久久久久久久91精品免费观看| 亚洲精品国产国语| 亚洲 小说区 图片区 都市| 国产免费播放一区二区| 日韩亚洲AV无码一区二区不卡| 麻豆最新国产剧情AV原创免费| 亚洲色无码专区一区| 亚洲精品偷拍视频免费观看| 男人进去女人爽免费视频国产| 亚洲一区二区三区91| 免费v片在线观看品善网| 好久久免费视频高清| 国产成人亚洲合集青青草原精品| www国产亚洲精品久久久| 无码成A毛片免费| 亚洲av中文无码乱人伦在线观看 |