Core】二、添加控制器和视图
2018-09-06 12:45
控制器Controller
在添加控制器前,我们先看下它为我们自动生成的一些Controller,我们看下AccountController.cs
来看下登录验证方法Login
!!!跟以前的写法好像很多地方不一样?async这个应该是异步 干什么用的呢 ?Task 是什么?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,基本都是整理网上的资料,之前没有研究过,希望跟大家一起研究下,如有错误的地方,希望大家指正;如有不理解的地方也希望大家指点一下。