欢迎光临
我们一直在努力

.netcoreday01

Asp .Net Core项目文件

使用C#语言开发 .csproj是根据编程语言的文档使用

和之间的区别是项目文件和文件夹不包含在.csproj文件中,以前是指定好项目文件和项目文件夹的路径现在不需要指定这些。应该是和win10的文件管理器打通了。

不需要卸载项目就可以直接编辑文件

还有就是可以在项目文件夹中创建文件直接可以显示在项目中

TargetFrameWork:指定目标框架

AspNetCoreHostingModel:指定应用程序托管形式:

InProcess是指定我们要使用进程内托管模型,即在IIS工作进程(w3wp.exe)中托管我们的asp.net core程序

OutOfProcess是我们要使用进程外托管模型,就是将web请求转发到asp.net core中,而整个应用程序运行在.net core内置的Kestrel中

asp.net core默认是进程外的一个托管形式 OutOfProcess 这里的默认是指的删除csproj中的配置,所用的托管模型

 

 

 

 

PackageReference

配置包的引用,在NuGet中可以找到对应的NuGet。在NuGet中可以看到Microsoft.AspNetCore.App 引用了很多的其他的包。这个包我们叫做综合包(Metapackage)。目前只有一个这个包

这个包本身没有任何信息只是一个其他包的依赖列表。就是asp.netcore中可能用到的包的列表。你如果需要需要去NuGet中下载

如果这个引用包没有指定版本会根据你的sdk版本只默认指定版本

AspNetCore项目启动是通过一个控制台启动的

 

 

调用CreateWebHostBuilder方法返回一个web主机,Builder方法就是将程序托管到iis或者Kestrel

Run方法用来启动程序接受web请求  

 

 

 

第一个方法用来配置应用程序需要的各种服务

第二个方法用了配置我们接受请求的管道处理。中间件的配置

 

 

 

 

 

 

 

 

进程内托管和进程外托管

 

 

 上图为进程内托管。w3wp.exe为iis进程名称,而iisexpress.exe是我们的vs中iis的进程名称

 

 

 

 

 

 上图会和进程内托管有相同的效率

 

 

然而这种模式会存在效率要比进程内托管效率低一些但是也有优点

就是让程序更加容易拓展,运维层面上可以使用不同的服务器。也使得程序更加安全

 

 

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:.netcoreday01
文章链接:https://www.jmwz.net/2291.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址