asp.net core mvc之 视图

一、在控制器中找到匹配视图,然后渲染成 HTML 代码返回给用户

cs 复制代码
public class HomeController : Controller
{
     public IActionResult Index()
     {
         return View(); //默认找 Views/Home/Index.cshtml ,呈现给用户
     }
}

二、指定视图

1、控制器

cs 复制代码
public class HomeController : Controller
{
     public IActionResult Index()
     {
         return View("~/Views/Home/abc.cshtml");
     }
}

视图有它自己的语法,这个语法就是 Razor语法

2、abc.cshtml 视图

cs 复制代码
@{
    string str = "字符串";
}

<h1>abc</h1>
<h3>@str</h3>

三、控制器给视图传递数据(强类型)

1、UserController 控制器 中 DoRegister 方法

cs 复制代码
public class UserController : Controller
{

     public IActionResult DoRegister(UserInfo userInfo)
     {
          if (ModelState.IsValid)
          {
              return View("~/Views/User/Detail.cshtml",userInfo);
          }         
     }
}

2、创建 Detail.cshtml 视图

cs 复制代码
@model FirstCoreMvc.Models.UserInfo

<h1>@Model.Name</h1>

四、控制器给视图传递数据(弱类型)

1、ViewData["键"]

HomeController.cs 控制器
cs 复制代码
public class HomeController : Controller
{
        public IActionResult Index()
        {
            var currentUser = new UserInfo() { Name="xiaoxiao",Password="1234"};
            ViewData["currentuser"] = currentUser;
            return View(); //默认找 Views/Home/Index.cshtml ,呈现给用户
        }
}
视图使用
cs 复制代码
@{
    var currentUser = ViewData["currentuser"] as UserInfo;
}
<h1>@currentUser.Name</h1>

也可以在视图( Views/Home/Index.cshtml )中定义 @{ ViewData["Title"] = "Home Page"; } 在_Layout.cshtml 布局页面中使用。

2.ViewBag.键

控制器 如下:

ViewBag.currentTime = DateTime.Now.ToShortTimeString();

ViewBag.xiaowang= new UserInfo() { Name = "小王", Password = "1234" };

视图 如下:

<h1>@ViewData["currentTime"]</h1>

<h1>@ViewBag.currentTime</h1>

<h1>@ViewBag.xiaowang.Name</h1>

相关推荐
鹿屿二向箔7 小时前
基于SSM(Spring + Spring MVC + MyBatis)框架的汽车租赁共享平台系统
spring·mvc·mybatis
假装我不帅10 小时前
asp.net framework从webform开始创建mvc项目
后端·asp.net·mvc
鹿屿二向箔12 小时前
基于SSM(Spring + Spring MVC + MyBatis)框架的咖啡馆管理系统
spring·mvc·mybatis
九鼎科技-Leo1 天前
什么是 ASP.NET Core?与 ASP.NET MVC 有什么区别?
windows·后端·c#·asp.net·mvc·.net
希忘auto1 天前
详解Java之Spring MVC篇二
java·spring·mvc
LilKevinRay1 天前
【SpringMVC】记录一次Bug——mvc:resources设置静态资源不过滤导致WEB-INF下的资源无法访问
java·笔记·mvc·bug
鹿屿二向箔2 天前
基于 JAVASSM(Java + Spring + Spring MVC + MyBatis)框架开发一个九宫格日志系统
java·spring·mvc
Ares-Wang2 天前
ASP.NET Core 路由规则,自定义特性路由 ,IActionConstraint 路由约束 总结 mvc
后端·asp.net·mvc
技术拾荒者2 天前
.net core mvc 控制器中页面跳转
后端·c#·asp.net·mvc·.netcore
吴冰_hogan2 天前
spring-mvc源码
java·spring·mvc