.NET Core快速入门教程 3、我的第一个.NET Core App (CentOS篇)
一、前言
本篇开发环境?
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的翻译) |
|---|---|---|
| new | Initialize .NET projects. | 初始化项目(相当于通过VS模板新建项目) |
| restore | Restore dependencies specified in the .NET project. | 还原项目中的依赖(相当于VS创建ASP.NET MVC,添加相关依赖) |
| run | Compiles and immediately executes a .NET project. | 启动项目 |
| build | Builds a .NET project. | 编译项目 |
| publish | Publishes a .NET project for deployment (including the runtime). | 发布项目(包含runtime) |
| test | Runs unit tests using the test runner specified in the project. | 启动单元测试 |
| pack | Creates a NuGet package. | 创建nuget包 |
| migrate | Migrates a project.json based project to a msbuild based project. | 迁移基于project.json,以兼容msbuild的编译 |
| clean | Clean build output(s). | 清除项目中编译产生的输出 |
| sln | Modify solution (SLN) files. | 修改解决方案文件.sln |
| add | Add reference to the project. | 添加引用 |
| remove | Remove reference from the project. | 移除引用 |
| list | List reference in the project. | 列出项目中的引用 |
| nuget | Provides additional NuGet commands. | 通过nuget参数并附加一些参数,可以进行nuget包管理的一些操作 |
| msbuild | Runs Microsoft Build Engine (MSBuild). | 使用msbuild进行编译 |
| vstest | Runs Microsoft Test Execution Command Line Tool. | 启动命令行测试工具 |
| -v/—version | Display .NET Core SDK version. | 查看.NET Core SDK版本 |
| -i/—info | Display .NET Core information. | 查看.NET Core 详细信息 |
| -d/—diagnostics | Enable diagnostic output. | 启用诊断 |
| -v/—verbosity | Set the verbosity level of the command. | 设置冗长命令集? |
| -h/—help | Show 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 文件
五、备注
- 支持的项目模板
| Templates | Short Name | Language | Tags |
|---|---|---|---|
| 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 |
| xUnit Test Project | xunit | [C#], F#, VB | Test/xUnit |
| ASP.NET Core Empty | web | [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 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 |
| ASP.NET Core Web API | webapi | [C#] | Web/WebAPI |
| Nuget Config | nugetconfig | Config | |
| Web Config | webconfig | Config | |
| Solution File | sln | Solution | |
| Razor Page | page | Web/ASP.NET | |
| MVC ViewImports | viewimports | Web/ASP.NET | |
| MVC ViewStart | viewstart | Web/ASP.NET |
不得不说:C#才是.NET平台的亲儿子啊
- 如何知道命令支持哪些参数?
答:利用好—help/-h 参数
#示例:
dotnet --help
dotnet new --help
dotnet restore --help
dotnet new console --help
dotnet new mvc --help
.NET Core快速入门教程 3、我的第一个.NET Core App (CentOS篇)的更多相关文章
- .NET Core快速入门教程 1、开篇:说说.NET Core的那些事儿
一..NET Core的诞生 聊 .NET Core,就不得不说他的爸爸 .NET.当年Java刚刚兴起,如火如荼,微软也非常推崇Java,当时Windows平台的Java虚拟机就是微软按照JVM标准 ...
- .NET Core 快速入门教程
.NET Core 快速学习.入门系列教程.这个入门系列教程主要跟大家聊聊.NET Core的前世今生,以及Windows.Linux(CentOS.Ubuntu)基础开发环境的搭建.第一个.NET ...
- .NET Core快速入门教程 2、我的第一个.NET Core App(Windows篇)
一.前言 本篇开发环境?1.操作系统: Windows 10 X642.SDK: .NET Core 2.0 Preview 二.安装 .NET Core SDK 1.下载 .NET Core下载地址 ...
- .NET Core快速入门教程 5、使用VS Code进行C#代码调试的技巧
一.前言 为什么要调试代码?通过调试可以让我们了解代码运行过程中的代码执行信息,比如变量的值等等.通常调试代码是为了方便我们发现代码中的bug.ken.io觉得熟练代码调试技巧是成为合格程序员的基本要 ...
- .NET Core快速入门教程 4、使用VS Code开发.NET Core控制台应用程序
一.前言 为什么选择VS Code?VS Code 是一款跨平台的代码编辑器,想想他的哥哥VS,并是微软出品的宇宙第一IDE,那作为VS的弟弟,VS Code 也不会差,毕竟微软出品.反正ken是这么 ...
- .NET Core快速入门教程 4、使用VS Code进行C#代码调试的技巧
一.前言 什么是代码调试? 通过调试可以让我们了解代码运行过程中的代码执行信息,比如变量的值等等.通常调试代码是为了方便我们发现代码中的bug. 本篇开发环境 1.操作系统: Windows 10 X ...
- .NET Core快速入门教程 3、使用VS Code开发.NET Core控制台应用程序
一.前言 本篇开发环境 1.操作系统: Windows 10 X642.SDK: .NET Core 2.0 Preview3.VS Code:1.14 二.安装&配置 1.VS Code下载 ...
- ASP.NET Core快速入门(第6章:ASP.NET Core MVC)--学习笔记
课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务40:介绍 1.Individual authentication 模板 ...
- ASP.NET Core快速入门(第4章:ASP.NET Core HTTP介绍)--学习笔记
课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务22:课程介绍 1.HTTP 处理过程 2.WebHost 的配置与启动 ...
随机推荐
- 利用 xrandr 命令修改屏幕分辨率
问题背景 电脑外接着一个 23' 的显示器,分辨率为 1920*1080. 操作系统:ubuntu 14.04 今天,通过 Setting->Displays 中选择外接屏的分辨率时,发现最大只 ...
- 一种在BIOS中嵌入应用程序的方法及实现
本文针对Award公司开发的计算机系统BIOS提出了一种嵌入应用程序的方法,其基本原理对别的品牌的BIOS也一样适用,仅需稍加修改.文中作者给出并讨论一个完整的例子程序,该程序已经通过实验验证. 正 ...
- freemarker写select组件报错总结(七)
1.错误描述 六月 26, 2014 11:26:27 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template proc ...
- 芝麻HTTP:
只要你的Scrapy Field字段名字和 数据库字段的名字 一样.那么恭喜你你就可以拷贝这段SQL拼接脚本.进行MySQL入库处理. 具体拼接代码如下: def process_item(self, ...
- 摘抄--全面理解面向对象的 JavaScript
全面理解面向对象的 JavaScript JavaScript 函数式脚本语言特性以及其看似随意的编写风格,导致长期以来人们对这一门语言的误解,即认为 JavaScript 不是一门面向对象的语言,或 ...
- Spring AOP介绍
1.介绍 AOP(面向切面编程)对OOP(面向对象编程)是一种补充,它提供了另一种程序结构的思路.OOP的模块单元是class,而AOP的模块单元是aspect.Spring中一个关键的组件是AOP框 ...
- Python Cookbook(第3版)中文版:15.17 传递文件名给C扩展
15.17 传递文件名给C扩展¶ 问题¶ 你需要向C库函数传递文件名,但是需要确保文件名根据系统期望的文件名编码方式编码过. 解决方案¶ 写一个接受一个文件名为参数的扩展函数,如下这样: static ...
- Python Cookbook(第3版)中文版:15.21 诊断分段错误
15.21 诊断分段错误¶ 问题¶ 解释器因为某个分段错误.总线错误.访问越界或其他致命错误而突然间奔溃. 你想获得Python堆栈信息,从而找出在发生错误的时候你的程序运行点. 解决方案¶ faul ...
- LightOJ1282 Leading and Trailing
题面 给定两个数n,k 求n^k的前三位和最后三位 Input Input starts with an integer T (≤ 1000), denoting the number of test ...
- Get the Job You Want(大学英语综合教程4课文)
UNIT3-1 Harvey Mackay, who runs his own company, often interviews applicants for jobs. Here he lets ...