zoukankan      html  css  js  c++  java
  • Asp.Net Core 轻松学-项目目录和文件作用介绍

    前言

        上一章介绍了 Asp.Net Core 的前世今生,并创建了一个控制台项目编译并运行成功,本章的内容介绍 .NETCore 的各种常用命令、Asp.Net Core MVC 项目文件目录等信息,通过对命令的学习和操作,对项目结构的认识,进一步理解 Asp.Net Core 的运行机制和项目框架。

    创建项目的命令

        首先来认识一下创建项目可使用的各种命令,.NETCore 的命令都以 dotnet 打头,这很好理解,输入 dotnet xxx,就是执行环境变量指向的 C:Program Filesdotnetdotnet.exe 程序,然后给 dotnet.exe 提供参数运行。建议初学者以下命令逐个执行一遍,加深记忆和理解,如果实在记不住也没有关系,可以通过在控制台中输入命令

    1.帮助命令
    dotnet --help 
    // 或者
    dotnet optional --help
    //  如
    dotnet new --help // 了解创建项目的帮助文档
    
    2. dotnet new 创建各种类型的项目
    模板 短名称 语言
    控制台应用程序 console [C#]、F#、VB
    类库 classlib [C#]、F#、VB
    单元测试项目 mstest [C#]、F#、VB
    xUnit 测试项目 xunit [C#]、F#、VB
    Razor 页 page [C#]
    MVC ViewImports viewimports [C#]
    MVC ViewStart viewstart [C#]
    ASP.NET Core 空 web [C#],F#
    ASP.NET Core Web应用程序(Model - View - Controller) mvc [C#],F#
    ASP.NET Core Web 应用程序 razor [C#]
    含 Angular 的 ASP.NET Core angular [C#]
    含 React.js 的 ASP.NET Core react [C#]
    含 React.js 和 Redux 的 ASP.NET Core reactredux [C#]
    ASP.NET Core Web API webapi [C#],F#
    Razor 类库 razorclasslib [C#]
    global.json 文件 globaljson
    NuGet 配置 nugetconfig
    Web 配置 webconfig
    解决方案文件 sln
    • 更多命令,见
    https://docs.microsoft.com/zh-cn/dotnet/core/tools/dotnet-new?tabs=netcore21
    

    最最常用的命令有 4 个,这些命令需要在项目根目录执行

    1. 创建一个 asp.net core mvc 项目,指定项目名称为 MyMvc
    dotnet new mvc  -o MyMvc
    
    2. 还原项目引用包
    dotnet restore
    
    3. 编译项目
    dotnet build
    
    4. 运行项目
    dotnet run
    

    Asp.Net Core 项目结构介绍

    1. 首先使用上面的命令创建一个 Asp.Net Core MVC 项目
    dotnet new mvc -o MyMvc
    
    2. 创建成功,得到一个新的 Asp.Net Core MVC 项目

    打开项目文件夹,进入项目,看到一个标准的 Asp.Net Core MVC 项目结构如下

    介绍各个目录和文件的作用

    1. 三层架构目录
    /Models
    /ViewS
    /Controllers
    

    这是一个和 Asp.Net MVC 相同的三层架构 MVC 项目,包含了 模型(Models)、视图(Views)、控制器(Controllers),简单来说就是 Models 内可以定义视图(Views)通过 html 传递到 Controllers 内控制器的实体对象

    2. obj 目录

    该目录用于存放相关配置文件暂存项,包引用项目配置说明

    3. Properties 目录

    该目录用于存放程序集信息,运行配置文件、内部资源等文件,该目录在创建之初,会默认创建一个 launchSettings.json ,该文件包含了一些程序启动时的信息

    {
      "iisSettings": {
        "windowsAuthentication": false, 
        "anonymousAuthentication": true, 
        "iisExpress": {
          "applicationUrl": "http://localhost:23090",
          "sslPort": 44351
        }
      },
      "profiles": {
        "IIS Express": {
          "commandName": "IISExpress",
          "launchBrowser": true,
          "environmentVariables": {
            "ASPNETCORE_ENVIRONMENT": "Development"
          }
        },
        "MyMvc": {
          "commandName": "Project",
          "launchBrowser": true,
          "applicationUrl": "https://localhost:5001;http://localhost:5000",
          "environmentVariables": {
            "ASPNETCORE_ENVIRONMENT": "Development"
          }
        }
      }
    }
    
    4. 无需理解太多,直接在项目根目录下输入命令启动 MVC 项目
    dotnet run
    

    你将会得到如下窗口输出信息

    重点关注控制台输出的一个信息

    Now listening on: https://localhost:5001
    Now listening on: http://localhost:5000
    

    该信息表示 Asp.Net Core MVC 项目已成功运行于 5001/5000 端口下,在浏览器中打开该连接地址

    https://localhost:5001
    

    再图看看 launchSettings.json 中的信息,找到下面的信息,你就了解了这个文件的作用是配置项目运行端口等信息的

    "applicationUrl": "https://localhost:5001;http://localhost:5000",
    
    5. wwwwroot

    该目录存放视图层(Views) html 页面引用的静态资源,如图片、样式表、脚本文件(js)等

    6. appsettings.json 和 appsettings.Development.json

    项目主配置文件,两个文件格式完全相同,实际上 appsettings.Development.json 表示 开发时运行程序的配置文件,使用 appsettings.{env}.json,可以很方便进行运行环境的切换,以加载不同的配置文件

    7. MyMvc.csproj 项目描述文件,用记事本打开它,看看
    <Project Sdk="Microsoft.NET.Sdk.Web">
    
      <PropertyGroup>
        <TargetFramework>netcoreapp2.1</TargetFramework>
      </PropertyGroup>
    
      <ItemGroup>
        <PackageReference Include="Microsoft.AspNetCore.App" />
        <PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.1.2" PrivateAssets="All" />
      </ItemGroup>
    
    </Project>
    
    

    第一行表示项目是一个 web 应用程序,当前使用的 SDK 版本为 netcoreapp2.1,配置节点 ItemGroup 包含了项目引用的 Nuget 包,如有新的包引用,可以加入该 ItemGroup 配置节

    8.Program.cs 文件,程序运行主入口,Main 方法所在
    9.Startup.cs
    • 该文件是默认文件,不可随意删除,在此文件中可以以包含服务配置、定义请求处理管道的重要操作。

    结语

         总的来说,这是一篇小白入门答疑,简单的介绍了一个标准的 Asp.Net Core MVC 项目都包含了哪些文件和目录,以及各自的作用,希望对未入门的同学有点帮助

  • 相关阅读:
    [置顶] windows player,wzplayerV2 for windows
    wzplayer 近期将会支持BlackBerry和WinPhone8
    wzplayerEx for android(真正硬解接口,支持加密的 player)
    ffmpeg for ios 交叉编译 (支持i686 armv7 armv7s) 包含lame支持
    ffmpeg for ios 交叉编译 (支持i686 armv7 armv7s) 包含lame支持
    编译cegcc 0.59.1
    wzplayer 近期将会支持BlackBerry和WinPhone8
    wzplayerEx for android(真正硬解接口,支持加密的 player)
    windows player,wzplayerV2 for windows(20140416)更新
    编译cegcc 0.59.1
  • 原文地址:https://www.cnblogs.com/viter/p/10026517.html
Copyright © 2011-2022 走看看