前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Asp.NetCore Web开发之RazorPage

Asp.NetCore Web开发之RazorPage

作者头像
宿春磊Charles
发布2022-03-29 09:32:50
8210
发布2022-03-29 09:32:50
举报
文章被收录于专栏:DotNet 致知

这节讲一下Razor页面。

首先要明确,Razor 不是一种编程语言。它是服务器端的标记语言,配合C#语言,就可以像PHP语言语言一样(但它们并不相同),处理HTML页面逻辑。它是Asp.NetCore Web开发中的一把利器,Razor页面本身是一个模块,就像一个WPF应用程序一样,一端负责逻辑,一端负责展现,你可以在VS启动界面直接新建RazorPage项目,但是在Asp.NetCore 框架中,微软将它融入了进来,作为HTML页面的渲染功能,可以直接使用。

作为渲染HTML页面的功能,Razor的基本语法是 @{多行C#代码} 或者 @单行C#代码,Razor文件的扩展名为.cshtml

在Asp.NetCore MVC 程序中,Razor页面承载了所有的View渲染,在Controller中,通过Action 中的View()方法将Action和其对应的Razor页面做绑定。那如何进行数据交互呢,有三种方法

代码语言:javascript
复制
  ViewData["Data"] = 1;  //使用键值对的形式
  ViewBag.Data = 1;  //使用动态属性的形式 ViewBag后直接点自定义属性名 
  return View(1);  //使用传参的形式

下图一为对应的在Razor页面中数据渲染的方式,Model值就是View()方法传入的参数,这个参数是一个自定义类型,要在页面顶部先声明这个属性:@model 类型完整名

另一种很方便的渲染方式是超链接:

代码语言:javascript
复制
<a asp-action="index" asp-route-参数名="1" asp-controller="Home" >跳转</a>

这种标记方式叫做TagHelper默认是引用的,在_ViewImports.cshtml这个文件中可以看到,这个文件配置的是使用Razor页面一些必要的引用

注意,这种标记方式是GET类型,它解析后的链接为

http:--/Home/index?参数名=1,参数可以设置多个,根据自己的需求即可。

对于Razor页面相关,暂时先讲这些,后续在实例开发讲解中,会详细涉及...

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DotNet 致知 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档