.Net Core MVC学习笔记

.Net Core项目目录

application.json

保存项目设置,如数据库连接等

wwwroot

该文件夹是个特殊文件夹,命名之后图标变成地球形状,存放的是前端静态资源,html、css、JavaScript以及图片等,文件夹内所有文件都会被服务器所托管。

Progarm.cs和Startup.cs

这两个文件是.Net项目中最重要的组成部分,分别主管了程序的入口Main函数和系统生命周期。

  1. Startup.cs是.Net Core SDK默认生成的,集中管理了系统的依赖注入、中间件(middleware)以及请求通道request pipeline。主要有两个作用:
  2. 在ConfigureServices里注入各种services组件的依赖,该方法在.net运行时被调,实际上asp.netcore提供了内置的ioc容器,ConfigureServices就是把我们的service注入到ioc容器中,通过参数IServiceCollection进行注入,注入的种类有两种:一种是自定义服务注入,另一种是.netcore自带服务的注入。
  3. 在Congigure方法中创建中间件middleware,设置http请求通道request pipeline,由Middleware进行处理,每个middleware都会接收上一个middleware的输出,并把自己的处理结果传递给下一个middleware,通过middleware的组合排列,就形成了http请求通道,所有中间件共用一个请求通道。middleware就是组装到应用程序管道中用来处理请求和响应的软件,asp.netcore自带很多middleware。请求通道都是通过Configure方法的IApplicationBuilder参数来创建的,每个middleware都可以截获、修改、传递请求对象和输出响应对象,在某些情况下,middleware可以做短路处理,直接向前端输出响应对象。使用IHostingEnvironment参数来配置虚拟主机的环境变量,在实际开发中,常把环境分为开发环境、集成环境、测试环境、预发布环境、生产环境。两种方式可设置:1、右键项目名,选择Properties,选择debug,Environment variables就是了。2、在launchSettings.json中设置
  4. Program.cs中的Main函数就是根据"CreateWebHostBuilder()"函数创建并运行一个虚拟的托管主机WebHost,CreateWebHostBuilder()做了四件事情:
  5. 加载主机和应用程序的配置信息;
  6. 配置日志记录;
  7. 设置web服务器;
  8. 设置.Net Core应用程序的托管形式。

IIS Express

托管服务器有两个:
1、IIS Express指的是Visual Studio自带的服务器
2、与项目同名的.Net Core服务器
二者都可以启动项目,区别在于IIS Express只能在Windows平台运行,而同名的.Net Core服务器支持跨平台。

Properties里的launchSettings.json

包含项目设置,如端口信息、运行环境等。

ASP.Net MVC路由系统

是为了解决动态路由url的映射所设计的。
特点如下:

  1. 文件无需保存在硬盘上(文件可以不存在,允许动态生成);
  2. 访问文件无需后缀(可以防止暴露技术栈);
  3. url结构与服务器文件夹结构无关(安全);
  4. url将会被映射给controller控制器请求资源,不会映射给静态文件。
  • url的patterns:
    {域名}/{Controller}/{Action}:www.xxx.com/Controller_xxx/Action_xxx
    请求处理是由controller控制的,页面返回是由controller中的action函数处理。
  • 分段路由Segments(自定义路由)的pattern
    {域名}/{Controller}/{Action}/{id},id是action函数的参数

ASP.Net MVC如何定义URL与Controller之间的映射规则?

需要系统默认路由,使用中间件app.UseMvcWithDefaultRoute();
映射默认路由(输入域名会调用的路由):
{域名}/{Controller=Home}/{Action=Index}/{Value?}

ps:自己写的请求,必须放在根路径"/"之前

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值