在上一文中,我们使用默认程序的设置创建了一个ASP.NET Core MVC应用程序,并可以在浏览器中正常浏览程序了,这一篇文章中,我们来重点看看程序的整个目录结构以及文件包含的意义。以下是Visual Studio中ASP.NET Core MVC应用程序的默认项目结构,我们在这里看到的项目中的文件夹与存储在硬盘上的物理文件夹是完全保持一致的。
解决方案文件:我们在项目MyDemoCore上点击会在编辑器中打开
这里主要是显示项目使用的目标框架,依赖性,还要包括的第三方组件等等。
Connected Services目录:
“Connected Services”目录主要包含外部服务、API和其他数据源的列表。比如与Azure、AWS、谷歌云以及第三方服务(如身份验证提供商或数据库)的集成,在本程序中,我们还没有使用任何服务,所以是空的,没有任何服务依赖项。
Properties目录:
Properties目录主要包括launchSettings.json文件,该文件包括调试设置的Visual Studio配置文件。launchSettings.json是一个配置文件,帮助开发人员为不同的环境(如开发、暂存、生产等)配置ASP.NET(也称为ASP.NET Core)应用程序的调试和启动配置文件。上面是默认的配置情况。
wwwroot目录:
默认情况下,ASP.NET Core项目中此文件夹被视为web根文件夹。静态文件可以存储在web根目录下的任何文件夹中,并使用该根目录的相对路径进行访问。所有css、JavaScript和外部库文件都应该存储在这里,这些文件是HTML文件中的引用。
依赖项文件夹:
依赖项文件夹包含项目所依赖的所有依赖项的列表,包括NuGet包、项目引用和框架依赖项,比如,如果引入Dapper、Autofac等等,都会在这里显示。
Controllers, Models, Views目录:
Controllers, Models, Views分别是 控制器(C)、模型(M)、视图(V)
模型:仅包含纯应用程序数据,它不包含逻辑描述如何将数据呈现给用户
视图:展示模型的数据给用户。视图知道如何访问模型的数据,但它不知道这些数据意味着什么或用户可以做些什么来操纵它。
控制器:视图和模型之间存在。它侦听由视图(或其他外部源)触发的事件,并对这些事件执行适当的反应。在大多数情况下,反应是在模型上调用方法。由于视图和模型通过通知机制连接,因此该操作的结果将自动反映在视图中
appsettings.json文件:
appsettings.json文件是项目中的一个配置文件,包括ASP.NET Core和ASP.NET 5/6/7等等,用于保存特定的配置设置相应的参数。它允许开发人员使用JSON格式进行配置,所以很容易读取和操作,例如,数据库字符串的连接就经常会放在这里。
program.cs文件:
最后一个文件“program.cs”是应用程序的入口点。ASP.NET Core web应用程序是一个控制台应用程序,用于构建和启动web应用程序,像以前版本的应用程序,有的是放在了start.cs文件中,有的是放在了Global.asax文件中的,在这个文件中,启动时加载的各种组件都在这里,像上面的默认启用静态文件、启用路由、启用用户认证等等。