.Net6 MVC文件介绍

.Net6 MVC文件介绍

.Net6 MVC文件介绍_第1张图片

.csproj 文件

在解决方案资源管理器中双击项目名称以在编辑器中打开 .csproj 文件。右键单击项目,然后单击编辑项目文件以编辑 .csproj 文件。如下图所示。

.Net6 MVC文件介绍_第2张图片

Sdk="Microsoft.NET.Sdk.Web">

 

 

    net6.0

    <Nullable>enableNullable>

    <ImplicitUsings>enableImplicitUsings>

 

 

 

    Include="Microsoft.EntityFrameworkCore.Design" Version="6.0.9">

      <PrivateAssets>allPrivateAssets>

      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitiveIncludeAssets>

   

    ="Microsoft.EntityFrameworkCore.SqlServer" Version="6.0.9" />

    Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.9">

      <PrivateAssets>allPrivateAssets>

      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitiveIncludeAssets>

   

    ="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="6.0.9" />

    ="Swashbuckle.AspNetCore" Version="6.3.0" />

 

 

该项目的 SDK 是 Microsoft.NET.Sdk.Web。目标框架是 net6.0,表明我们使用的是 .NET 6

元素决定 Nullable 引用类型的 Nullable 的项目范围行为。enable 的值表示为项目启用了 Nullable 引用类型。

要获得有关 Nullable 引用类型的更多详细信息,请单击此处

< ImplicitUsings > 元素可用于启用或禁用。什么时候

< ImplicitUsings > enable 设置为启用,某些命名空间会为您隐式导入。

里的内容是添加NuGet包的设置

连接服务

.Net6 MVC文件介绍_第3张图片

它包含有关添加到项目中的所有服务引用的详细信息。可以在此处添加新服务

依赖项

.Net6 MVC文件介绍_第4张图片

这里包含项目中使用的 NuGet 包的 所有引用,这里的 Frameworks 节点包含引用两个最重要的 dotnet core runtime asp.net core runtime

Properties:

文件夹包含一个 launchSettings.json 文件,其中包含启动应用程序所需的所有信息。有关执行应用程序时要执行的操作的配置详细信息,并包含 IIS 设置、应用程序 URL、身份验证、SSL 端口详细信息等详细信息。

{

  "iisSettings": {

    "windowsAuthentication": false,

    "anonymousAuthentication": true,

    "iisExpress": {

      "applicationUrl": "http://localhost:54743",

      "sslPort": 44382

    }

  },

  "profiles": {

    "RazorPagesMovies": {

      "commandName": "Project",

      "dotnetRunMessages": true,

      "launchBrowser": true,

      "applicationUrl": "https://localhost:7249;http:/localhost:5249">https://localhost:7249;http://localhost:5249a>",

      "environmentVariables": {

        "ASPNETCORE_ENVIRONMENT": "Development"

      }

    },

    "IIS Express": {

      "commandName": "IISExpress",

      "launchBrowser": true,

      "environmentVariables": {

        "ASPNETCORE_ENVIRONMENT": "Development"

      }

    }

  }

}

wwwroot:

.Net6 MVC文件介绍_第5张图片

这是 webroot 文件夹,项目所需的所有静态文件都从这里存储和提供

css文件夹:放入自己创建的css文件

js文件夹:放入自己创建的js文件

lib文件夹:放入第三方外部库

Controllers文件夹

项目所需的所有控制器都存储在这里,可以在此处找到默认的“HomeController.cs”文件

Models文件夹

包含所有域 或实体类。用户可以添加他选择的文件夹以在项目中创建逻辑分组。

Views文件夹

约定自定义的视图要以控制器名称来创建文件夹名称:

如HomeController.cs控制器文件,在Views中就创建名称为Home文件夹(省略Controller)

该文件夹的文件名尽量对应该控制器的Action方法名称

如HomeController.cs文件中的Index方法,在Home文件夹中就创建为Index.cshtml文件

.Net6 MVC文件介绍_第6张图片

.Net6 MVC文件介绍_第7张图片

Shared文件夹:

_Layout.cshtml:全局通用HTML布局模板页,可包含脚本与样式表,可用于设置通用页眉与页脚。

_ValidationScriptsPartial.cshtml:页面表单验证依赖,适用于System.ComponentModel.DataAnnotations做前端表单验证。

_ViewImports.cshtml:写入的内容会配置导入到每个Razor页面的Razor指令,所以@model可以写成

_ViewStart.cshtml:视图呈现前执行文件,可用于设置视图属性,如Layout。

appsettings.json

仅用于生成环境的配置

红色并非该文件的默认代码,而是在后面操作数据库时自动生成的

{

  "Logging": {

    "LogLevel": {

      "Default": "Information",

      "Microsoft.AspNetCore": "Warning"

    }

  },

  "AllowedHosts": "*",

  "ConnectionStrings": {

    //连接字符串

    "RazorPagesMoviesContext": "Server=(localdb)\\mssqllocaldb;Database=RazorPagesMovies.Data;Trusted_Connection=True;MultipleActiveResultSets=true"

  }

}

Program.cs

Program.cs 是整个Web应用程序的入口文件,.NET6 之前有一个入口函数 Main() , NET6中去掉了 ,其中的代码没有任何函数定义,这里的语句就是顶级语句

顶级语句可以参考微软官网的介绍:顶级语句   C#9顶级语句

代码介绍:

//WebApplication 表示整个Web应用程序 ,调用CreateBuilder()方法创建一个WebApplicationBuilder 对象

var builder = WebApplication.CreateBuilder(args);

 

//WebApplicationBuilder 对象添加 RazorPages 服务与控制器服务 , 也可以添加其他服务,比如依赖注入、登录等

builder.Services.AddControllersWithViews();

 

// 构造一个 WebApplication 实例

var app = builder.Build();

 

// 添加一个异常处理中间件,此中间件发生作用的条件是:当前运行环境必须是开发环境

// 如果 Web 应用程序出现异常,则跳转到 Error.cshtml 这个页面

if (!app.Environment.IsDevelopment())

{

    app.UseExceptionHandler("/Home/Error");

// 默认HSTS值为30天。

    app.UseHsts();

}

 

// 将 HTTP 请求重定向到 HTTPS。

app.UseHttpsRedirection();

 

// 启用静态文件中间件,加上这行代码后, 我们在浏览器中才能访问 wwwroot 目录下的文件,否则会报错

app.UseStaticFiles();

 

// 启用路由中间件,启用后在浏览器中输入网址 Web应用才能正确解析。

app.UseRouting();

 

// 授权用户访问安全资源。 当我们的网站是基于身份认证的话需要用到,

// 一般购物网站都需要启用,如果只是纯展示性的比如企业官网等可以去掉。

app.UseAuthorization();

 

// 控制器全局路由

app.MapControllerRoute(

    name: "default",

    pattern: "{controller=Home}/{action=Index}/{id?}");

 

// 运行应用。

app.Run();

// 添加一个异常处理中间件,此中间件发生作用的条件是:当前运行环境必须是开发环境

// 如果 Web 应用程序出现异常,则跳转到 Error.cshtml 这个页面

if (!app.Environment.IsDevelopment())

{

    app.UseExceptionHandler("/Home/Error");

        // 默认HSTS值为30天。

    app.UseHsts();

}

.Net6 MVC文件介绍_第8张图片

你可能感兴趣的:(ASP.Net,MVC,microsoft,.net,asp.net,c#)