.NET Core 开发:永远的Hello Word
从.NET Core发布到现在已经很长一段时间了,园子里的各路大神也和它打的火热,本着与时俱进,啥火学啥的原则,我也开始了我的.NET Core学习之旅。
简介
.NET从2002年发行到现在,从呱呱坠地到亭亭玉立,已经过去了十几年,但因为其出生一直被局限在Windows的生态圈,虽然跨平台与开源的呼声一直不断,但固执的微软爸爸好像并没有把自家孩子放出去闯荡的意愿,直到2013年新任CEO Satya Nadell正式走马上任之后,微软爸爸便有如磕了药一般在开源和跨平台方面动作不断,.NET Core计划也是在这个时候被宣布的,并随之推出了开发工具Visual Studio Code,Web开发平台则是ASP.NET 5,但由于这个名称很容易让人误以为她是ASP.NET 4系列的升级版本,但其实她是完全重写了新版本,于是被微软改名为ASP.NET Core。由于微软爸爸的努力,.NET终于可以在Windows、Linux和Mac上开发和运行了,.NET的程序员也终于可以在自己心爱的Mac上愉快的写代码了。
学习资源
如果想学习.NET Core的话,最好的当然是去扒官方文档,博客园也有.NET Core中国学习小组,不过听说大神都是直接看源代码。
园子:http://www.cnblogs.com/dotNETCoreSG
大神:http://www.cnblogs.com/artech/tag/.NET Core/
环境安装
.NET Core SDK:大家可以直接在去官网上进行下载,下载完成之后安装,安装完成后,在控制台中输入dotnet --version出现如下界面即表示安装成功:

若安装过程中报错:Element not found,请参考:https://q.cnblogs.com/q/86671/
开发工具:由于本子硬盘容量实在太小128G,实在是装不起的VS2015这么高大上的东西了,只能退而求其次,使用微软力推的跨平台编辑器VS Code了,后续的开发随笔也主要是以VS Code作为主要的生产力工具。
如图所示,打开VS Code的扩展界面,安装C#插件,使用Ctrl+`快捷键调出控制台,搜索C#,安装后重启VS Code即可(当然你也可以选择使用Ctrl+P调出Quick Open输入“ext install csharp”快速进行安装),如下图所示: 
永远的Hello Word
当开发环境配置完成后,就可以直接使用VS Code进行.NET Core进行开发啦,一如既往的以经典的“Hello World”为例:
第一步:新建文件夹Test,使用VS Code打开Test文件(文件→打开文件夹)后,使用Ctrl+`快捷键打开控制台终端,输入“dotnet new”,提示创建成功后,会生成如下的项目结构:

- dotnew new:创建基本项目;
- dotnet restore:还原项目;
- dotnet build:构建项目;
- dotnet publish:发布项目;
- dotnet run:编译并运行项目;
- dotnet pack:封装成nuget包。
第二步:打开Program.cs文件,按F5即可进入调试,界面和Visual Studio的界面类似: 
不过这里需要注意的是,第一次运行时,由于VS Code需要下载.NET Code Debugger和OmniSharp可能需要等待一段时间,请安心等待,执行结果如下图所示:

项目结构
- project.json:类似于.NET Framework中的.csproj文件,不过听说下一个版本.NET Core会弃用此文件,重新回归.csproj;
- launch.json:顾名思义,这是.NET Core的启动配置文件,包括启动变量,运行方式等配置;
- tasks.json:用于配置自动化任务,诸如编译、测试、调试等。
总结
虽然.NET Core和ASP.NET Core的跨平台、支持Docker,不依赖与IIS环境等让他有着相当大的潜能,但目前国内以.NET Core作为主力生产力语言仍然还有很长一段路要走,但做为程序员,需要去适应并拥抱这种改变,未来并不是属于年轻人,而是属于能跟上时代脚步的人,既然做不成勇者,也要做个路人。
.NET Core 开发:永远的Hello Word的更多相关文章
- .NET Core使用NPOI导出复杂Word详解
前言: 最近使用NPOI做了个导出Word文档的功能,关于使用.NET Core 导出Word文档的方式有很多.最终我为什么选择了NPOI来实现了这个功能,首先是NPOI是一个开源,免费且容易上手的第 ...
- [转]ASP.NET Core 开发-Logging 使用NLog 写日志文件
本文转自:http://www.cnblogs.com/Leo_wl/p/5561812.html ASP.NET Core 开发-Logging 使用NLog 写日志文件. NLog 可以适用于 . ...
- ASP.NET Core 开发-中间件(Middleware)
ASP.NET Core开发,开发并使用中间件(Middleware). 中间件是被组装成一个应用程序管道来处理请求和响应的软件组件. 每个组件选择是否传递给管道中的下一个组件的请求,并能之前和下一组 ...
- ASP.NET Core开发-Docker部署运行
ASP.NET Core开发Docker部署,.NET Core支持Docker 部署运行.我们将ASP.NET Core 部署在Docker 上运行. 大家可能都见识过Docker ,今天我们就详细 ...
- ASP.NET Core开发-后台任务利器Hangfire使用
ASP.NET Core开发系列之后台任务利器Hangfire 使用. Hangfire 是一款强大的.NET开源后台任务利器,无需Windows服务/任务计划程序. 可以使用于ASP.NET 应用也 ...
- Core 开发-Logging 使用NLog
ASP.NET Core 开发-Logging 使用NLog 写日志文件 ASP.NET Core 开发-Logging 使用NLog 写日志文件. NLog 可以适用于 .NET Core 和 ...
- ASP.NET Core开发-读取配置文件Configuration
ASP.NET Core 是如何读取配置文件,今天我们来学习. ASP.NET Core的配置系统已经和之前版本的ASP.NET有所不同了,之前是依赖于System.Configuration和XML ...
- ASP.NET Core 开发-Entity Framework (EF) Core 1.0 Database First
ASP.NET Core 开发-Entity Framework Core 1.0 Database First,ASP.NET Core 1.0 EF Core操作数据库. Entity Frame ...
- ASP.NET Core 开发-Logging 使用NLog 写日志文件
ASP.NET Core 开发-Logging 使用NLog 写日志文件. NLog 可以适用于 .NET Core 和 ASP.NET Core . ASP.NET Core已经内置了日志支持,可以 ...
随机推荐
- 从实现HTML页面局部刷新到JSONP
也可以用iframe方法发get请求,但是目前iframe基本已经被弃用,所以此处就不介绍这个方法. 方案一:用图片造 get 请求 button.addEventListener('click', ...
- 微信小程序怎么开发(小程序开发文档)
微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验. 2017年1月9日~2018年1月9日,小程序正式上线一周年.上线以来,小程序不断地释放新能力, ...
- json属性(Jackson)
Jackson相关:使用Jackson相关的注解时一定要注意自己定义的属性命名是否规范. 命名不规范时会失去效果.(例如Ename ,Eage 为不规范命名.“nameE”,“ageE”为规范命名). ...
- 利用JavaScript实现文本框改文字功能
<html> <head> <meta charset="utf-8"> <title>无标题文档</title> &l ...
- vue 脚手架 使用步骤
当我知道搭建脚手架得使用命令行的时候.我就崩溃了.所以写一篇记录以后留着自己用也方便大家. 首先要安装一个node 环境, 1.打开cmd 进到你要建项目的目录: E: ...
- Wireshark抓包过滤
主要说明下抓包前准备工作,及wireshark里面的两个过滤器:捕获过滤器和应用显示过滤器 1.捕获过滤器.顾名思义就是捕获时的过滤器.主要用来决定你要抓包抓哪个IP哪个端口,明确自己要抓哪个IP和端 ...
- jquery 星级评价插件jquery Raty的使用
需要引入的js <script type="text/javascript" src="<%=basePath%>resources/js/jquery ...
- Jquery- scrollTop()一个问题:
在使用jquery的scrollTop()方法获取滚动条的位置时,发现变量名为top会有影响,代码: <!doctype html> <html> <head> & ...
- redis过期key删除
LZ一开始配置到启动类里面,结果出现了主线程阻塞的情况. 如下是流程: 首先修改配置文件redis.conf中的:notify-keyspace-events Ex,默认为notify-keyspac ...
- linux内核内存分配(一、基本概念)
内存分配是Linux比较复杂也是比较重要的部分,这个和ssd驱动很类似:物理地址和虚拟地址的映射关系.下面总结下最近看到的有关内存分配的内容和自己的理解: 1.一致内存访问和非一致内存访问 上图来自& ...