【Asp.Net Core】二、添加控制器和视图

控制器Controller

在添加控制器前,我们先看下它为我们自动生成的一些Controller,我们看下AccountController.cs

来看下登录验证方法Login

!!!跟以前的写法好像很多地方不一样?async这个应该是异步 干什么用的呢 ? Task<IActionResult> 是什么? var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure: false); ?

好多问题,之前没这么用过,赶紧补一下。

突然找到了博客园两年前的文章,逐渐清晰起来了。

dudu:

实际案例:在现有代码中通过async/await实现并行

jesse:

async & await 的前世今生(Updated)

看完这两篇文章是不是知道干嘛了?特别是这个图,为我们清晰的展示了它的运行顺序:

OK,水平有限,我也只是看了个半懂,知道是干嘛的了,为什么这么做,至于原理和应用,用到的时候再恶补吧...ㄟ(⊙ω⊙ㄟ)哈

我们来添加一个控制器 HelloWorldController

视图Views

我们添加视图(不再像我们之前那样 右击 添加视图了 个人觉得那个还是比较好的 创建控制器 直接生成 相应的Views文件夹,这里需要我们手工创建)

我们在Views文件夹下面 创建一个新的文件夹 HelloWorld 跟我们控制器名字相同

右击这个文件夹 我们发现添加选项有个视图

这个界面倒是跟我们之前的一样,但是我们现在还没有数据模型, 模型类和数据上线文类不选 无法创建

所以,我们换个方式,我们右击文件夹→添加→新建项 选择MVC视图页 我们的控制器Action就是Index所以用默认的Index.cshtml就好

我们修改一下这个视图页,把注释去掉,添加Title

默认是使用_Layout布局页(_ViewStart.cshtml),当然,跟以前一样,我们可以不使用默认的布局页_Layout,在Index.cshtml 中修改为自己的布局页 Layout="_LayoutTest";

路由配置在Satrtup.cs类中

我们运行一下看看

传递数据

我们接收两个参数 name(名字)和 nums(输出次数)

通过ViewData传递给视图页

我们在试图页接收这两个参数并输出:

我们看下输出结果:

看来还是很容易上手的,跟之前没什么太大区别,估计是还没有走到精华的地方,越来越有种焦急的样子了,但是毕竟网上的资料太少,还是需要我们自己慢慢研究发现,大家一起讨论研究。

初次使用Core,基本都是整理网上的资料,之前没有研究过,希望跟大家一起研究下,如有错误的地方,希望大家指正;如有不理解的地方也希望大家指点一下。

原创文章 转载请尊重劳动成果 http://yuangang.cnblogs.com

时间: 2024-08-24 19:33:26

【Asp.Net Core】二、添加控制器和视图的相关文章

ASP.NET Core MVC通过IViewLocationExpander扩展视图搜索路径

原文:ASP.NET Core MVC通过IViewLocationExpander扩展视图搜索路径 IViewLocationExpander API ExpandViewLocations Razor视图路径,视图引擎会搜索该路径. PopulateValues 每次调用都会填充路由 项目目录如下所示 创建区域扩展器,其实我并不需要多区域,我目前只需要达到一个区域中有多个文件夹进行存放我的视图. 所以我通过实现IViewLocationExpander进行扩展添加我自定义视图路径规则即可正如

【ASP.NET Core】MVC中自定义视图的查找位置

.NET Core 的内容处处可见,刷爆全球各大社区,所以,老周相信各位大伙伴已经看得不少了,故而,老周不考虑一个个知识点地去写,那样会成为年度最大的屁话,何况官方文档也很详尽.老周主要扯一下大伙伴们在入门的时候可能会疑惑的内容. ASP.NET Core 可以在一个项目中混合使用 Web Pages 和 MVC ,这是老周最希望的,因为这样会变得更灵活.Web Pages 类似于我们过去的 Web 开发方式,以页面为单位,此模型侧重于功能划分.而 MVC 侧重于数据,有什么样的数据模型就有什么

ASP.NET MVC系列:添加控制器

基于MVC的应用程序包含三个部分 Models(模型):对应用程序的数据进行处理 Views(视图):动态生成HTML,显示数据 Controllers(控制器):应用程序中处理用户交互的部分,处理浏览器请求,检索数据模型,然后响应给视图 添加控制器 在“解决方案”中,右键点击“Controllers”文件夹,然后依次选择“添加”,“控制器” 在”添加控制器“窗口中,将控制器名称命名为“HelloWorldController”,模板为“空 MVC 控制器”,然后点击”确定“按钮 像下面那样将V

K8S+GitLab-自动化分布式部署ASP.NET Core(二) ASP.NET Core DevOps

一.介绍 前一篇,写的K8S部署环境的文章,下面正式开始部署ASP.NET Core 项目. 二.正式部署ASP.NET Core项目 GitHub地址: https://github.com/gyw1309631798/Deploy-API. 我创建了一个ASP.NET Core 2.1 WebAPI项目 里面包含了deploy.yaml,Dockerfile文件. 要在K8S上部署首先要添加regsecret ,不然从Harbor pull会失败. kubectl create namesp

ASP.NET Core MVC 之控制器(Controller)

操作(action)和操作结果(action result)是 ASP.NET MVC 构建应用程序的一个基础部分. 在 ASP.NET MVC 中,控制器用于定义和聚合一组操作.操作是控制器中处理传入请求的一种方法.控制器提供了一种逻辑方式,将相似的操作组织起来,允许一些通用的规则(例如路由,缓存,授权)使用共同的应用.传入的请求通过 路由 映射到操作. ASP.NET Core MVC 中,控制器可以是任何以 “Controller” 结尾或继承自以 “Controller” 结尾的可实例化

ASP.NET Core (二):入门

上一篇:ASP.NET Core(一):简介 下一篇:(待续) 英文原版:Getting Started 1. 安装 .NET Core 2. 创建 .NET Core 项目 在命令提示符窗口输入命令: mkdir aspnetcoreapp cd aspnetcoreapp dotnet new 3. 更新 project.json 文件,将 Kestrel HTTP 服务器程序包作为依赖添加到文件中 { "version": "1.0.0-*", "b

在Asp.Net Core中添加区域的简单实现

使用区域,可以有效的对业务进行隔离,各种业务及分工可以更灵活.在Asp.Net Core中启用区域也是极简单的. 使用步骤: 1.在 Startup.cs 中添加区域的路由: app.UseMvc(routes => { routes.MapRoute( name: "area", template: "{area:exists}/{controller=Home}/{action=Index}/{id?}"); routes.MapRoute( name:

asp.net core web 添加角色管理

新建asp.net core web应用 添加RolesAdminController [Authorize(Roles = "Admin")] public class RolesAdminController : Controller { private UserManager<ApplicationUser> _userManager; private RoleManager<IdentityRole> _roleManager; private read

asp.net core 二 Nginx Supervisor 负载,监听

ASP.NET Core负载均衡集群搭建(CentOS7+Nginx+Supervisor+Kestrel) asp.net core在linux运行下,一但命令行退出,程序将停止,而且asp.net core的监听以及负载问题将在这里说明 参考连接:http://www.linuxidc.com/Linux/2016-11/136997.htm http://www.sohu.com/a/192683690_468635  https://www.cnblogs.com/ants/p/5732