码迷,mamicode.com
首页 > Web开发 > 详细

ASP.NET Core快速入门(Jessetalk)(第1章:介绍与引入)(持续更新)

时间:2018-12-11 01:37:08      阅读:950      评论:0      收藏:0      [点我收藏+]

标签:启动   dev   obj   hosting   不兼容   网卡   ica   force   api   

课程链接:http://video.jessetalk.cn/course/explore

良心课程,大家一起来学习哈!

任务1:课程介绍

技术分享图片

任务2:环境安装

下载地址:https://dotnet.microsoft.com/download

或者在 VS2017 安装时勾选 .NET CORE,如果已安装则在菜单栏上点击工具--获取工具和功能(T)

技术分享图片

安装完成验证,在左下角 Windows 图标右键启动 Window PowerShell(管理员)

PS C:\WINDOWS\system32> dotnet

Usage: dotnet [options]
Usage: dotnet [path-to-application]

Options:
  -h|--help         Display help.
  --info            Display .NET Core information.
  --list-sdks       Display the installed SDKs.
  --list-runtimes   Display the installed runtimes.

path-to-application:
  The path to an application .dll file to execute.
PS C:\WINDOWS\system32> dotnet --help
.NET 命令行工具 (2.1.500)
使用情况: 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",获取有关命令的详细信息。

任务3:在控制台创建ASP.NET Core应用程序

查看模板:

PS C:\WINDOWS\system32> dotnet new --help
使用情况: new [选项]

选项:
  -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

Examples:
    dotnet new mvc --auth Individual
    dotnet new nugetconfig
    dotnet new --help

新建一个 ASP.NET Core Web App (Model-View-Controller)

PS D:\jessetalk> mkdir aspdotnetcore


    目录: D:\jessetalk


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       2018-12-09     23:56                aspdotnetcore


PS D:\jessetalk> cd .\aspdotnetcorePS D:\jessetalk\aspdotnetcore> dotnet new mvc
已成功创建模板“ASP.NET Core Web App (Model-View-Controller)”。
此模板包含非 Microsoft 的各方的技术,有关详细信息,请参阅 https://aka.ms/aspnetcore-template-3pn-210。

正在处理创建后操作...
正在 D:\jessetalk\aspdotnetcore\aspdotnetcore.csproj 上运行 "dotnet restore"...
  正在还原 D:\jessetalk\aspdotnetcore\aspdotnetcore.csproj 的包...
  正在生成 MSBuild 文件 D:\jessetalk\aspdotnetcore\obj\aspdotnetcore.csproj.nuget.g.props。
  正在生成 MSBuild 文件 D:\jessetalk\aspdotnetcore\obj\aspdotnetcore.csproj.nuget.g.targets。
  D:\jessetalk\aspdotnetcore\aspdotnetcore.csproj 的还原在 2.21 sec 内完成。

还原成功。

启动项目

PS D:\jessetalk\aspdotnetcore> dotnet run
从 D:\jessetalk\aspdotnetcore\Properties\launchSettings.json 使用启动设置...
info: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[0]
      User profile is available. Using ‘C:\Users\MINGSON\AppData\Local\ASP.NET\DataProtection-Keys‘ as key repository and Windows DPAPI to encrypt keys at rest.
Hosting environment: Development
Content root path: D:\jessetalk\aspdotnetcore
Now listening on: https://localhost:5001
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.

浏览器访问:https://localhost:5001/

技术分享图片

任务4:在VS2017中创建ASP.NET Core应用程序

在 VS2017 中通过 IIS Express 启动

技术分享图片

官方推荐在开发和测试的时候通过控制台启动,切换启动方式

技术分享图片

启动之后会自动把日志通过控制台输出

技术分享图片

任务5:部署到IIS

Windows10如何安装IIS

下载 ASP.NET Core Module

安装完成后在 iis 的模块下面可以看到

技术分享图片

在 iis 中新建一个网站,停掉 Default 的网站

技术分享图片

在应用程序池中修改 .NET CLR 版本,不然无法运行

技术分享图片

在控制台发布

PS D:\jessetalk\aspdotnetcore> dotnet publish
用于 .NET Core 的 Microsoft (R) 生成引擎版本 15.9.20+g88f5fadfbe
版权所有(C) Microsoft Corporation。保留所有权利。

  D:\jessetalk\aspdotnetcore\aspdotnetcore.csproj 的还原在 84.35 ms 内完成。
  aspdotnetcore -> D:\jessetalk\aspdotnetcore\bin\Debug\netcoreapp2.1\aspdotnetcore.dll
  aspdotnetcore -> D:\jessetalk\aspdotnetcore\bin\Debug\netcoreapp2.1\aspdotnetcore.Views.dll
  aspdotnetcore -> D:\jessetalk\aspdotnetcore\bin\Debug\netcoreapp2.1\publish\

发布结果

技术分享图片

发布到指定目录

PS D:\jessetalk\aspdotnetcore> dotnet publish -o D:\jessetalk\sites\aspdotnetcoredemo
用于 .NET Core 的 Microsoft (R) 生成引擎版本 15.9.20+g88f5fadfbe
版权所有(C) Microsoft Corporation。保留所有权利。

  D:\jessetalk\aspdotnetcore\aspdotnetcore.csproj 的还原在 80.27 ms 内完成。
  aspdotnetcore -> D:\jessetalk\aspdotnetcore\bin\Debug\netcoreapp2.1\aspdotnetcore.dll
  aspdotnetcore -> D:\jessetalk\aspdotnetcore\bin\Debug\netcoreapp2.1\aspdotnetcore.Views.dll
  aspdotnetcore -> D:\jessetalk\sites\aspdotnetcoredemo\

浏览发布的网站

技术分享图片

技术分享图片

通过 VS2017 发布:

清空该目录下面的内容:D:\jessetalk\sites\aspdotnetcoredemo,刷新浏览器

技术分享图片

在 VS2017 中,项目右键--发布,通过文件夹发布

技术分享图片

刷新浏览器

技术分享图片

任务6:准备CentOS和Nginx环境

下载 vmware workstation

官网:https://www.vmware.com/products/workstation-pro/workstation-pro-evaluation.html

下载 CentOS,选择 Minimal ISO

官网:https://www.centos.org/download/

第一次启动可能出现
VMware与 Device/Credential Guard 不兼容

手动安装组件:

网卡

技术分享图片

修改为 yes

技术分享图片

重启网卡

技术分享图片

安装 ifconfig 命令

技术分享图片

技术分享图片

得到 ip 地址 192.168.204.128 之后可以通过 putty 连接

putty下载地址:https://putty.org/

使用 putty 连接 cenos 之后可以方便复制粘贴命令

安装 Nginx:https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-centos-7

安装完成后浏览器访问:192.168.204.128

技术分享图片

ASP.NET Core快速入门(Jessetalk)(第1章:介绍与引入)(持续更新)

标签:启动   dev   obj   hosting   不兼容   网卡   ica   force   api   

原文地址:https://www.cnblogs.com/MingsonZheng/p/10094515.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!