文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

C#中Razor模板引擎怎么使用

2023-06-29 07:32

关注

这篇文章主要讲解了“C#中Razor模板引擎怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#中Razor模板引擎怎么使用”吧!

使用视图引擎可以完成一些需要定制化内容格式的问题,比如邮件模板。

引用

install-package RazorEngine

使用

public class TestDemo    {        private string name;        public int Age { get => age; set => age = value; }        public string Name { get => name; set => name = value; }        private int age;    }
string template = @"                @if(Model!=null){                foreach(var item in Model){<text>姓名:@item.Name,年龄:@item.Age</text>                    }                }else{<text>没有数据</text>}                ";            var data = new List<TestDemo>() {                new TestDemo(){Name="张三",Age=10 },                new TestDemo(){Name="张四",Age=11 },                new TestDemo(){Name="马武",Age=30 }            };            var html= Razor.Parse(template, data);            //输出            //姓名:张三,年龄:10            //姓名:张四,年龄:11            //姓名:马武,年龄:30            var html1 = Razor.Parse(template, null);            //输出            //没有数据

补充:下面看下Razor模板引擎(C#版)语法

Razor模板引擎语法

1、简介:

Razor 是一种标记语法,可以让您将基于服务器的代码(Visual Basic 和 C#)嵌入到网页中。

基于服务器的代码可以在网页传送给浏览器时,创建动态 Web 内容。当一个网页被请求时,服务器在返回页面给浏览器之前先执行页面中的基于服务器的代码。通过服务器的运行,代码能执行复杂的任务,比如进入数据库。

Razor 是基于 ASP.NET 的,是为创建 Web 应用程序而设计的。它具有传统 ASP.NET 的功能,但更容易使用并且更容易学习。

2、原理:

Razor 是一种将服务器代码嵌入在网页中的简单的编程语法。

Razor 语法是基于 ASP.NET 框架,专门用于创建 Web 应用程序的部分 Microsoft.NET 框架。

Razor 语法支持所有 ASP.NET 的功能,但是使用的是一种简化语法,对初学者而言更容易学习,对专家而言更有效率的。

Razor 网页可以被描述成带以下两种类型内容的 HTML 网页: HTML 内容和 Razor 代码。

当 服务器读取页面时,它首先运行 Razor 代码,然后再发送 HTML 页面到浏览器。在服务器上执行的代码能够执行一些在浏览器上不能完成的任务,比如,访问服务器数据库。服务器代码能创建动态的 HTML 内容,然后发送到浏览器。从浏览器上看,服务器代码生成的 HTML 与静态的 HTML 内容没有什么不同。

3、语法规则:

Razor 代码块包含在 @{ ... } 中 。 (和asp的<% %>相似),注意代码块中除了C#代码,html也是允许的
内联表达式(变量和函数)以 @ 开头 (html中引用变量、对象需要使用@引用)
代码语句用分号结束
变量使用 var 关键字声明 (类型推断)
字符串用引号括起来
C# 代码区分大小写
C# 文件的扩展名是 .cshtml

语法补充:

if for  foreach while 都是代码块 ,用@if{} @for(){} 使用  ,或者放在代码块中使用 @{ if(){} }

读取用户输入:Request[] ;数据转换: AsInt()、AsDecimal()等

代码块中输出非html和非变量内容:<text>我是要输出的内容</text>  或: @:我是要输出的内容      (内容里也可以输出变量  @变量名)

代码块中输出内容:同在html中  使用  @变量名(不需要冒号)

在调用 返回IHtmlString类型的方法不需要“;”,也不需要在代码块中。如:@RenderPage() 、 @Html.Partial()等

 只有在代码块中{}使用C#代码需要“;”   类似@RenderPage("~/Views/Shared/PartialOne.cshtml", new {lxf= "小飞哥"})这样输出内容的方法后面不需要加“;”

html中输出变量  如:@a    在@a前后如有内容时请加上括号: @(a)

感谢各位的阅读,以上就是“C#中Razor模板引擎怎么使用”的内容了,经过本文的学习后,相信大家对C#中Razor模板引擎怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯