ASP.NET Core MVC 13. 安装前端库
html
就是部分View,他没有本身的数据,数据来自图中白色的那块,它的数据须要传进去,第一个参数是View的名称,第二个参数就是传入的数据,它没有本身对应的后台逻辑和数据
Home/Index.cshtml想把这个列表改为复用的,改为一个Partical View
起名一般是如下划线开始的
先把引入Partial的代码写上
Partial VIew的代码就是这个样,最上面声明类型
原来的代码注释掉
这里有个提示建议使用其余的方法,这里先无论他,先运行页面测试
改为异步的
最终的代码
把里面每行tr的数据再提取数据出来作Partial View
新建_StudentRow.cshtml
使用TagHelper的引入方式
运行测试,发生错误。这是因为上面的部分视图的代码 是异步引入致使的
先把这里的异步调用改为日常的 ,非异步的
运行效果 正常
Home/Index.cshtml也改为TagHelper的形式
刷新页面,运行正常
前端
视图组件
例如在Index.cshtml页面显示上面是学生列表。下面显示课程的列表。下面应该单独从数据库查询或者其余数据源读取数据,也有可能显示在其余页面,这块也是复用的
特色
单独建文件夹ViewComponents
首先创建C#的类,ViewComponents像一个mini的mvc,因此他应该也有Controller。全部这个类就至关因而它的controller,而后它还对应一个Razor View.
名称一般也是一ViewComponent结尾的
继承自 ViewComponent
首先注入Repository
相似于Controller,返回类型是实现了IViewComponentResult接口的对象
这里会有个问题,若是咱们返回的类型是字符串,那么View方法会把count当作ViewName,当作View的名称就回去寻找这个名为Count的字符串值的View
那么咱们只要写上第一个参数View的名称,把参数当第二参数传过去就能够了。
view的name改叫作Default吧
全部的ViewCompent放在Shared/Components文件夹下。
一个ViewComponent和Comtroller相似,也要创建和ViewComponent同名的文件夹名称,由于。一个ViewComponent可能对应多个view。
使用这个ViewComponent
它是能够加参数的
参数是在哪里接收呢/
若是想每一个页面都显示的话,就放在Layout里面
这样就每一个页面都有这个总数
数据库
vc冒号+ViewComponent的名称。注意都是小写的。无论你的ViewComponent名字是不是大写的,这里都要小写的
还须要引入命名空间
此次就有了效果
若是ViewComponent的名字是两个单词组成的叫作WelcomeStudentViewComponent
两个单词以前用短横线隔开,而且注意单词都要是小写的。中文叫作短横线命名方式
mvc