1.什么是 dotnet Core

  • .NET Core是适用于 windows、linux 和 macos 操作系统的免费、开源托管的计算机软件框架,是微软开发的第一个官方版本,具有跨平台 (Windows、Mac OSX、Linux) 能力的应用程序开发框架 (Application Framework),未来也将会支持 FreeBSD 与 Alpine 平台,也是微软在一开始发展时就开源的软件平台,它经常也会拿来和现有的开源 .NET 平台 Mono 比较。
  • 由于 .NET Core 的开发目标是跨平台的 .NET 平台,因此 .NET Core 会包含 .NET Framework 的类库,但与 .NET Framework 不同的是 .NET Core 采用包化 (Packages) 的管理方式,应用程序只需要获取需要的组件即可,与 .NET Framework 大包式安装的作法截然不同,同时各包亦有独立的版本线 (Version line),不再硬性要求应用程序跟随主线版本。
  • .NET Core 项目的主要目标有:支持或可以移转 (port) 到更多的操作系统平台与芯片架构 (也就是未来项目会跨出 x86 平台)。具有引人注目的性能与高可靠度。开发人员能快速与直接的获取 .NET Core 开发环境。在直觉与具生产力的情况下建造应用程序,使用文件,示例与 NuGet 组件。

-》官方的教程:ASP.NET Core 入门中文教程(点击跳转) 可过浏览官方文档更加详细说明。

2.NetCore 环境部署

  • 环境部署下载专门 .NET Core 2.2 SDK 目前.Net Core 的版本有 1.0 2.0 2.2 3.0 版本号,可以根据个人需要下载,以下是Net Core 2.2 SDK环境下载地址,点击获取。
    .NET Core 2.2 SDK 下载地址

  • 命令dotnet 判断是否安装车成功

    1
    dotnet --help
  • 安装成功会提示显示以下内容,通过下面的文本能里了解到常用的sdk-optionsSDK命令捆绑工具中的其他命令:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    .NET 命令行工具 (2.1.503)
    使用情况: dotnet [runtime-options] [path-to-application] [arguments]

    执行 .NET Core 应用程序。

    runtime-options:
    --additionalprobingpath <path> 要探测的包含探测策略和程序集的路径。
    --additional-deps <path> 指向其他 deps.json 文件的路径。
    --fx-version <version> 要用于运行应用程序的安装版共享框架的版本。
    --roll-forward-on-no-candidate-fx 已启用“不前滚到候选共享框架”。

    path-to-application:
    要执行的应用程序 .dll 文件的路径。

    使用情况: dotnet [sdk-options] [command] [command-options] [arguments]

    执行 .NET Core SDK 命令。

    sdk-options:
    -d|--diagnostics 启用诊断输出。
    -h|--help 显示命令行帮助。
    --info 显示 .NET Core 信息。
    --list-runtimes 显示安装的运行时。
    --list-sdks 显示安装的 SDK。
    --version 显示使用中的 .NET Core SDK 版本。

    SDK 命令:
    add 将包或引用添加到 .NET 项目。
    build 生成 .NET 项目。
    build-server 与由生成版本启动的服务器进行交互。
    clean 清理 .NET 项目的生成输出。
    help 显示命令行帮助。
    list 列出 .NET 项目的项目引用。
    migrate 将 project.json 项目迁移到 MSBuild 项目。
    msbuild 运行 Microsoft 生成引擎(MSBuild)命令。
    new 创建新的 .NET 项目或文件。
    nuget 提供其他 NuGet 命令。
    pack 创建 NuGet 包。
    publish 发布 .NET 项目进行部署。
    remove 从 .NET 项目中删除包或引用。
    restore 还原 .NET 项目中指定的依赖项。
    run 生成并运行 .NET 项目输出。
    sln 修改 Visual Studio 解决方案文件。
    store 在运行时包存储中存储指定的程序集。
    test 使用 .NET 项目中指定的测试运行程序运行单元测试。
    tool 安装或管理扩展 .NET 体验的工具。
    vstest 运行 Microsoft 测试引擎(VSTest)命令。

    捆绑工具中的其他命令:
    dev-certs 创建和管理开发证书。
    ef Entity Framework Core 命令行工具。
    sql-cache SQL Server 缓存命令行工具。
    user-secrets 管理开发用户密码。
    watch 启动文件观察程序,它会在文件发生更改时运行命令。

    运行 "dotnet [command] --help",获取有关命令的详细信息。
  • 通过上面内容,我们可以尝试了解一下 new 指令的作用可以执行一下语句

    1
    dotnet new --help
  • 便可大致了解dotnet new –help 或者 dotnet new –h 作用

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    选项:
    -h, --help 显示有关此命令的帮助。
    -l, --list 列出包含指定名称的模板。如果未指定名称,请列出所有模板。
    -n, --name 正在创建输出的名称。如果未指定任何名称,将使用当前目录的名称。
    -o, --output 要放置生成的输出的位置。
    -i, --install 安装源或模板包。
    -u, --uninstall 卸载一个源或模板包。
    --nuget-source 指定在安装期间要使用的 NuGet 源。
    --type 基于可用的类型筛选模板。预定义的值为 "project"、"item" 或 "other"。
    --force 强制生成内容,即使该内容会更改现有文件。
    -lang, --language 根据语言筛选模板,并指定要创建的模板的语言。

    模板 短名称 语言 标记
    ----------------------------------------------------------------------------------------------------------------------
    Console Application console [C#], F#, VB Common/Console
    Class library classlib [C#], F#, VB Common/Library
    Unit Test Project mstest [C#], F#, VB Test/MSTest
    NUnit 3 Test Project nunit [C#], F#, VB Test/NUnit
    NUnit 3 Test Item nunit-test [C#], F#, VB Test/NUnit
    xUnit Test Project xunit [C#], F#, VB Test/xUnit
    Razor Page page [C#] Web/ASP.NET
    MVC ViewImports viewimports [C#] Web/ASP.NET
    MVC ViewStart viewstart [C#] Web/ASP.NET
    ASP.NET Core Empty web [C#], F# Web/Empty
    ASP.NET Core Web App (Model-View-Controller) mvc [C#], F# Web/MVC
    ASP.NET Core Web App razor [C#] Web/MVC/Razor Pages
    ASP.NET Core with Angular angular [C#] Web/MVC/SPA
    ASP.NET Core with React.js react [C#] Web/MVC/SPA
    ASP.NET Core with React.js and Redux reactredux [C#] Web/MVC/SPA
    Razor Class Library razorclasslib [C#] Web/Razor/Library/Razor Class Library
    ASP.NET Core Web API webapi [C#], F# Web/WebAPI
    global.json file globaljson Config
    NuGet Config nugetconfig Config
    Web Config webconfig Config
    Solution File sln Solution

3.用命令行创建第一个net Core 项目程序

  1. win+R 打开cmd命令台 可通过命令行创建项目文件名称 或者 创建文件夹,文件夹内按住Shift+鼠标右键

    1
    mkdir helloNetCore  //创建文件夹语句
  2. 跳转文件夹内

    1
    cd helloNetCore    //跳转到hellocare的文件夹内
  3. 创建mvc模板的core

    1
    2
    3
    dotnet new mvc  
    //创建.netCore MVC模式的项目 如想新建其他类型的项目,可通过dotnet new --help 命令查看
    //常用的项目类型还有 Web WebApi Razor 等 文章上面提及,具体详情可上上文

运行命令图

  1. 运行
    1
    2
    dotnet run (一般http://localhost:5000 下运行)
    //可通过打开浏览器输入http://localhost:5000 便可查看结果

运行命令图

  1. 发布程序
    1
    2
    dotnet publish 
    otnet publish -o D:\dotnet\Web_IIS\hellocoreWeb (发布到指定位置)

运行结果