您的位置:首页 > 运维架构 > Linux

.NET Core快速入门教程 3、我的第一个.NET Core App (CentOS篇)

2017-07-20 07:01 671 查看

一、前言

本篇开发环境?
1、操作系统:CentOS7(因为ken比较偏爱CentOS7)
2、SDK版本:.NET Core 2.0 Preview

你可能需要的前置知识
1、了解如何通过Hyper-V安装CentOS虚拟机
2、了解CentOS7基础命令/常用命令

二、安装 .NET Core SDK

1、安装必要依赖

sudo yum -y install libunwind libicu

2、下载(SDK列表)

cd /home/downloads
curl -sSL -o dotnet-2.0-preview.tar.gz https://aka.ms/dotnet-sdk-2.0.0-preview2-linux-x64-bin #preview版本下载地址需参考:https://www.microsoft.com/net/core/preview

3、创建SDK文件夹&将SDK解压到指定文件夹中

sudo mkdir -p /usr/dotnet/dotnet-2.0-preview && sudo tar zxf dotnet-2.0-preview.tar.gz -C /usr/dotnet/dotnet-2.0-preview

4、创建软连接

sudo ln -s /usr/dotnet/dotnet-2.0-preview/dotnet /usr/local/bin

三、熟悉命令(cmd)

1、查看版本

dotnet --version#2.0.0-preview2-006497

2、可选参数介绍

参数介绍(en)介绍(ken的翻译)
newInitialize .NET projects.初始化项目(相当于通过VS模板新建项目)
restoreRestore dependencies specified in the .NET project.还原项目中的依赖(相当于VS创建ASP.NET MVC,添加相关依赖)
runCompiles and immediately executes a .NET project.启动项目
buildBuilds a .NET project.编译项目
publishPublishes a .NET project for deployment (including the runtime).发布项目(包含runtime)
testRuns unit tests using the test runner specified in the project.启动单元测试
packCreates a NuGet package.创建nuget包
migrateMigrates a project.json based project to a msbuild based project.迁移基于project.json,以兼容msbuild的编译
cleanClean build output(s).清除项目中编译产生的输出
slnModify solution (SLN) files.修改解决方案文件.sln
addAdd reference to the project.添加引用
removeRemove reference from the project.移除引用
listList reference in the project.列出项目中的引用
nugetProvides additional NuGet commands.通过nuget参数并附加一些参数,可以进行nuget包管理的一些操作
msbuildRuns Microsoft Build Engine (MSBuild).使用msbuild进行编译
vstestRuns Microsoft Test Execution Command Line Tool.启动命令行测试工具
-v/—versionDisplay .NET Core SDK version.查看.NET Core SDK版本
-i/—infoDisplay .NET Core information.查看.NET Core 详细信息
-d/—diagnosticsEnable diagnostic output.启用诊断
-v/—verbositySet the verbosity level of the command.设置冗长命令集?
-h/—helpShow help.查看帮助

四、HelloWorld项目

1、创建项目

#1、创建&打开项目文件夹
mkdir /projects && cd /projects
#2、创建项目
dotnet new console -o helloworld
#dotnet new :创建&初始化项目
#console : 模板类型(相当于VS创建项目选择控制台应用程序)
#-o :指定output路径名,可以理解为项目文件夹名称,默认项目名称=项目文件夹名称,也可以用-n 单独指定项目名称
#dotnet new console -n helloworld
效果等同于 dotnet new console -o helloworld
#执行输出最后关键信息:The template "Console Application" was created successfully.

Processing post-creation actions...
Running 'dotnet restore' on helloworld/helloworld.csproj...
 Restoring packages for /projects/helloworld/helloworld.csproj...
 Installing Microsoft.NETCore.DotNetAppHost 2.0.0-preview2-25407-01.
 Installing Microsoft.Packaging.Tools 1.0.0-preview2-25401-01.
 Installing Microsoft.NETCore.DotNetHostResolver 2.0.0-preview2-25407-01.
 Installing NETStandard.Library 2.0.0-preview2-25401-01.
 Installing Microsoft.NETCore.Platforms 2.0.0-preview2-25405-01.
 Installing Microsoft.NETCore.DotNetHostPolicy 2.0.0-preview2-25407-01.
 Installing Microsoft.NETCore.App 2.0.0-preview2-25407-01.
 Generating MSBuild file /projects/helloworld/obj/helloworld.csproj.nuget.g.props.
 Generating MSBuild file /projects/helloworld/obj/helloworld.csproj.nuget.g.targets.
 Restore completed in 3.75 sec for /projects/helloworld/helloworld.csproj.

Restore succeeded.#项目文件就在/projects/helloworld/中

2、输出结果分析

#1、显示根据指定dotnet new console -o helloworld模板创建了项目
The template "Console Application" was created successfully.
#2、然后又主动调用了dotnet restore命令来还原项目的引用,主动安装依赖
Processing post-creation actions...
Running 'dotnet restore' on helloworld/helloworld.csproj...
 Restoring packages for /projects/helloworld/helloworld.csproj...

3、运行

cd /projects/helloworld/
dotnet run#运行结果Hello World!#
恭喜你,你的第一个.NET Core应用程序就这么诞生了
#源代码请查看 /projects/helloworld/Program.cs 文件

五、备注

支持的项目模板

TemplatesShort NameLanguageTags
Console Applicationconsole[C#], F#, VBCommon/Console
Class libraryclasslib[C#], F#, VBCommon/Library
Unit Test Projectmstest[C#], F#, VBTest/MSTest
xUnit Test Projectxunit[C#], F#, VBTest/xUnit
ASP.NET Core Emptyweb[C#]Web/Empty
ASP.NET Core Web App (Model-View-Controller)mvc[C#], F#Web/MVC
ASP.NET Core Web App (Razor Pages)razor[C#]Web/MVC/Razor Pages
ASP.NET Core with Angularangular[C#]Web/MVC/SPA
ASP.NET Core with React.jsreact[C#]Web/MVC/SPA
ASP.NET Core with React.js and Reduxreactredux[C#]Web/MVC/SPA
ASP.NET Core Web APIwebapi[C#]Web/WebAPI
Nuget ConfignugetconfigConfig
Web ConfigwebconfigConfig
Solution FileslnSolution
Razor PagepageWeb/ASP.NET
MVC ViewImportsviewimportsWeb/ASP.NET
MVC ViewStartviewstartWeb/ASP.NET
不得不说:C#才是.NET平台的亲儿子啊
如何知道命令支持哪些参数?
答:利用好—help/-h 参数

#示例:dotnet --help
dotnet new --help
dotnet restore --help
dotnet new console --help
dotnet new mvc --help

相关文章: 
.NET Core快速入门教程 1、开篇:说说.NET Core的那些事儿

原文地址:https://ken.io/note/dotnet-core-qucikstart-helloworld-centos
.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: