asp.net实现在非MVC中使用Razor模板引擎的方法
本篇章节讲解asp.net实现在非MVC中使用Razor模板引擎的方法。分享给大家供大家参考。具体分析如下: 模板引擎介绍 Razor、Nvelocity、Vtemplate,Razor一般在MVC项目中使用,这里介绍在非MVC项目中的用法。 如何使用Razor 环境搭建: ① 添加引用RazorEngine.dll 新建一个html,改名为cshtml。注意:通过 添加--html页再改成cshtml的方式打开是么有自动提示的,必须关掉该文件重新打开。推荐使用,添加--新建项--html页在这里直接改成cshtml创建cshtml文件,直接可用自动提示。 开始使用: 1. 在cshtml中使用Razor语法 @{}中为C#代码,C#代码还可以和html代码混排 <!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> <ul> @{ for (int i = 0; i < 10; i++) { <li> @ i</li> } } </ul> </body> </html> 2. 在一般处理程序中使用Razor: public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/html"; string fullPath=context.Server.MapPath(@"~/Razordemo/Razor1.cshtml"); //拿到cshtml文件路径 string cshtml=File.ReadAllText(fullPath);//得到文件内容 string html = Razor.Parse(cshtml);//解析cshtml文件解析得到html context.Response.Write(html); } 3. 如何在cshtml文件读取对象的值 Razor.Parse()方法的另一个重载就是传进一个Model对象,在cshtml文件中通过Model就可以点出来对象的属性。 在一般处理程序中解析: Dog dog = new Dog(); dog.Id = 100; dog.Height = 120; string html = Razor.Parse(cshtml,dog); context.Response.Write(html); 在cshtml中读取对象属性: <!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> <h1>狗狗信息:</h1> <h1>Id:@Model.Id</h1> <h1>身高:@Model.Height</h1> </body> </html> 希望本文所述对大家的asp.net程序设计有所帮助。 您可能感兴趣的文章:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – ASP.NET Web优化 – 无需捆绑即可缩小
- asp.net – 如何修复“’ddlAssignedTo’有一个无效的Selec
- 将数据从ASP.net返回到ExtJS网格
- 从asp.net中的gridview获取已检查的行
- asp.net – Web.Config文件中的多行文本
- asp.net-mvc – 如何将现有的SQL Server数据库添加到asp.ne
- ASP.NET Web.Config转换问题
- asp.net-mvc – 如何根据用户在ASP.NET MVC中的选择对列表进
- asp.net – 在同一行(左右)对齐标签和文本框
- asp.net – 从网页打印条形码标签