• Asp.NetCore Web开发之RazorPage


    这节讲一下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页面做绑定。那如何进行数据交互呢,有三种方法

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

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

        

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

    <a asp-action="index" asp-route-参数名="1" asp-controller="Home" >跳转</a>

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

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

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

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

       个人公众号,获取最新文章可以关注一下

  • 相关阅读:
    go语言与区块链
    git+jenkins
    cicd
    devops
    Go 并发
    Thinkphp5-未定义数据库类型
    用golang写爬虫
    kubernetes-通过VMware搭建k8s集群遇到的问题
    亚马逊全球开店2019
    kafka命令大全
  • 原文地址:https://www.cnblogs.com/charlesmvp/p/13381726.html
Copyright © 2020-2023  润新知