.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的翻译)
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 Confignugetconfig
Config
Web Configwebconfig
Config
Solution Filesln
Solution
Razor Pagepage
Web/ASP.NET
MVC ViewImportsviewimports
Web/ASP.NET
MVC ViewStartviewstart
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快速入门教程 1、开篇:说说.NET Core的那些事儿

原文地址:https://ken.io/note/dotnet-core-qucikstart-helloworld-centos


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/324558.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RPC(远程过程调用)

1、RPC和HTTP对比 1.1 具体实现 RPC:可以基于TCP协议,也可以基于HTTP协议。 HTTP:基于HTTP协议 1.2 效率 RPC:自定义具体实现可以减少很多无用的报文内容,使得报文体积更小。 HTTP:如果是HTTP 1.1 报文中很…

【2018.3.24】模拟赛之四-ssl2548 旋转【暴力模拟】

正题 大意 给出一块黑块和白块组成的版&#xff0c;将其旋转90后和之前的黑块叠加&#xff0c;求最初始和每次旋转后的黑块数。 解题思路 暴力模拟不解释 代码 #include<cstdio> #include<iostream> using namespace std; int n,s; char c[51][51],a[51][51];…

使用相对长度单位rem布局网页内容

前言&#xff1a;上篇我们提到了相对单位em的用法&#xff0c;知道了em的概念&#xff0c;即是一个相对的单位&#xff0c;也知道了em的值不是固定的&#xff0c;p标签里的em和p里面的div下面的1em的px值并不是一样的。具体是多少呢&#xff1f;那就得看一下父级元素的值了&…

告诉你,Spring Boot 真是个牛逼货

转载自 告诉你&#xff0c;Spring Boot 真是个牛逼货 现在 Spring Boot 非常火&#xff0c;各种技术文章&#xff0c;各种付费教程&#xff0c;多如牛毛&#xff0c;可能还有些不知道 Spring Boot 的&#xff0c;那它到底是什么呢&#xff1f;有什么用&#xff1f;今天给大家…

集合还有这么优雅的运算法?

前言&#xff1a;在初中数学&#xff0c;我们也有集合的概念&#xff0c;非但如此&#xff0c;还有集合中的一些运算&#xff0c;例如交集、并集、差集等&#xff0c;那么我们java中的集合是否有这样的运算呢&#xff1f;今天我们就一起来看看&#xff01;01并集就是将两个集合…

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

一、前言 本篇开发环境&#xff1f;1、操作系统&#xff1a; Windows 10 X642、SDK&#xff1a; .NET Core 2.0 Preview 二、安装 .NET Core SDK 1、下载 .NET Core下载地址&#xff1a;https://www.microsoft.com/net/download/core根据自己电脑情况选择对应版本即可.NET C…

【2018.3.24】模拟赛之六-ssl2550 重要人物【图论,最短路,SPFA】

正题 大意 有一个大人物&#xff0c;它要从经过一些地方&#xff0c;他所在的路会被封闭&#xff08;不可以进入&#xff0c;可以出&#xff09;。你要从一个点到到另一个点&#xff0c;求最短时间。 解题思路 求出每条路的封闭时间&#xff0c;然后SPFA 代码 #include<…

今天 ,给大家变个魔术!!!

前言&#xff1a;在对网页进行布局时&#xff0c;当我们设置div的的宽为固定宽时&#xff0c;理论上&#xff0c;内容是不会超出div的&#xff0c;那你有没有见过内容超出div固定宽度的情况呢&#xff1f;今天我们就来看看到底是怎么一回事&#xff1f;看分析之前&#xff0c;我…

Google的面试题长啥样

转载自 Google的面试题长啥样 本文翻译自Google工程师/面试官Alex Golec的文章&#xff1a;Google Interview Questions Deconstructed: The Knight’s Dialer&#xff1b; 来源&#xff1a;实验楼&#xff0c;翻译&#xff1a;实验楼扫地阿姨 原文&#xff1a;https://medium…

Autofac+Castle实现AOP事务

一、前言 最近公司新项目&#xff0c;需要搭架构进行开发&#xff0c;其中需要保证事务的一致性&#xff0c;经过一番查找&#xff0c;发现很多博文都是通过Spring.Net、Unity、PostSharp、Castle Windsor这些方式实现AOP的。但是这不是我想要的&#xff0c;因此一番查找后&am…

今天,我们就来抽个奖!

前言&#xff1a;在日常生活中&#xff0c;我们经常会用到一些抽奖的功能&#xff0c;比如公司年会上的抽奖环节&#xff0c;班级随机点名回答问题的小程序&#xff0c;随机点名系统的程序可以看这里&#xff1a;&#xff0c;那你知道类似的抽奖功能是怎么实现的吗&#xff1f;…

Spring Boot 最核心的 3 个注解详解

转载自 Spring Boot 最核心的 3 个注解详解 最近面试一些 Java 开发者&#xff0c;他们其中有些在公司实际用过 Spring Boot, 有些是自己兴趣爱好在业余自己学习过。 然而&#xff0c;当我问他们 Spring Boot 最核心的 3 个注解是什么&#xff0c;令我失望的是鲜有人能答上来…

刚刚,改造了下BaseDao……

今天在上课的时候&#xff0c;带着学生们写底层的jdbc连接数据库并且对数据表进行增删改查&#xff0c;写的那就一个痛苦啊……从创建实体类到写Dao层代码再到表现层的Jsp页面&#xff0c; 写了好久好久……终于写完了&#xff01;&#xff01;&#xff01;其实吧&#xff0…

ssl2340-格子游戏【并查集】

正题 题目链接 大意 有两个人在玩游戏&#xff0c;在一个n*n的矩阵的点上画线&#xff0c;有如果有线封了圈那么游戏结束&#xff0c;给出一些操作&#xff0c;求在那一轮结束了游戏&#xff0c;或没有结束游戏。 解题思路 用并查集把点相连&#xff0c;直到并查集形成环为…

ASP.NET Core MVC 过滤器介绍

过滤器的作用是在 Action 方法执行前或执行后做一些加工处理。使用过滤器可以避免Action方法的重复代码&#xff0c;例如&#xff0c;您可以使用异常过滤器合并异常处理的代码。 过滤器如何工作&#xff1f; 过滤器在 MVC Action 调用管道中运行&#xff0c;有时称为过滤器管…

dubbo小项目

完整Dubbo项目演示 1 原型 1.1 部门显示&#xff0c;显示全部部门信息 1.2 员工新增 1.3 查看部门员工 2 按照分布式架构进行设计项目 设定员工管理和部门管理不在同一个模块中&#xff0c;需要有一个员工管理项目和一个部门管理项目。 为了方便&#xff0c;不去每个项…

如何构建一套高可用的 APP 消息推送平台

转载自 如何构建一套高可用的 APP 消息推送平台 消息推送作为移动 APP 运营中的一项关键技术&#xff0c;已经被越来越广泛的运用。本文追溯了推送技术的发展历史&#xff0c;剖析了其核心原理&#xff0c;并对推送服务的关键技术进行深入剖析&#xff0c;围绕消息推送时产生…

为什么要有周考?周考是用来干什么的?

周考已经实行一年多的时间了&#xff0c;目前唯一用来检测学生们水平的可能就是周考的成绩了&#xff0c;不过&#xff0c;周考成绩也很能说明一切&#xff0c;每周周考的题目和范围都是本周所学知识&#xff0c;如果周考的成绩很差&#xff0c;那么可以很肯定的说&#xff0c;…

.NET Core快速入门教程 4、使用VS Code开发.NET Core控制台应用程序

一、前言 为什么选择VS Code&#xff1f;VS Code 是一款跨平台的代码编辑器&#xff0c;想想他的哥哥VS&#xff0c;并是微软出品的宇宙第一IDE&#xff0c;那作为VS的弟弟&#xff0c;VS Code 也不会差&#xff0c;毕竟微软出品。反正ken是这么认为的本篇开发环境&#xff1f…

晨读,难道只是为了完成任务而读的吗?

前两天&#xff0c;看到一篇“湖北恩施的一名学生早读课上大汗淋漓”的文章&#xff0c;不禁想起了我们班的早读。01早读情况除周一升旗以外&#xff0c;其余的学习日都是有早读的&#xff0c;但是早读的利用率有多少就不得而知了。一般在前一天布置作业的时候&#xff0c;作业…