在CentOS 7上安装.NET Core R2跑Hello World

前言

在上个月.NET Core出了最新版本预览版,只是在Window系统上试验了一下。原本想等发布正式版的时候在linux系统上试试,可能还需要一段时间,刚好有空可以折腾一下。

由于之前安装的Ubuntu系统是16的,目前还不支持,就没有在Ubuntu上测试。

系统环境:CentOS 7(1511) Minimal Core版本。

安装

提示:
Nodejs和Yeoman是用于自动化创建ASP.NET项目的,不是必须项。
本文是用Yeoman创建的ASP.NET项目,故添加了Nodejs和Yeoman的安装。
如果觉得不需要可以不安装。

.NET Core[必须]

1.去官网下载.NET Core:dotnet-dev-centos-x64.1.0.0-preview1-002702.tar.gz

2.移动并解压下载的安装文件。

$ # 创建dotnet文件夹
$ mkdir ~/dotnet
$ # 复制dotnet安装文件到dotnet文件夹下
$ cp dotnet-dev-centos-x64.1.0.0-preview1-002702.tar.gz ~/dotnet
$ # 解压安装文件
$ tar -xzf ~/dotnet/dotnet-dev-centos-x64.1.0.0-preview1-002702.tar.gz
$ # 删除dotnet文件夹下的原文件
$ rm ~/dotnet/dotnet-dev-centos-x64.1.0.0-preview1-002702.tar.gz

3.添加软连接,可以在全局使用。

$ ln -s ~/dotnet/dotnet /usr/local/bin

4.测试安装是否成功。

$ dotnet --version
1.0.0-preview1-002702 #输出版本号

Nodejs[可选]

不要使用系统自带的安装,版本太低。

1.去官网下载nodejs安装文件:node-v4.4.5-linux-x64.tar.xz

2.复制并解压。

$ # 创建nodejs文件夹
$ mkdir /usr/local/nodejs
$ # 复制node安装文件到nodejs文件夹下
$ cp node-v4.4.5-linux-x64.tar.xz /usr/local/nodejs
$ # 解压安装文件
$ tar -zvxf /usr/local/nodejs/node-v4.4.5-linux-x64.tar.xz
$ # 删除nodejs文件夹下的原文件
$ rm /usr/local/nodejs/node-v4.4.5-linux-x64.tar.xz

3.添加软连接,可以在全局使用。

$ sudo ln -s /usr/local/nodejs/node /usr/local/bin/node
$ sudo ln -s /usr/local/nodejs/npm /usr/local/bin/npm
$ sudo ln -s /usr/local/nodejs/node /usr/bin/node
$ sudo ln -s /usr/local/nodejs/node /usr/lib/node
$ sudo ln -s /usr/local/nodejs/npm /usr/bin/npm

4.测试安装是否成功。

$ node -v
v4.4.5 #输出版本号
$ npm -v
3.9.5 #输出版本号

Yeoman[可选]

Yeoman是用于创建asp.net的,同时需要安装相关的node插件:bower、grunt、gulp。

1.使用npm执行安装命令

$ sudo npm install -g yo bower grunt-cli gulp

等待安装完成。

2.安装asp.net生成器

$ npm install -g generator-aspnet

3.添加系统变量

将node的bin文件夹添加至系统变量中,否则会提示npm安装的插件命令不存在。

打开用户目录下的.bashrc文件:

$ vi ~/.bashrc

在尾部添加如下内容:

export PATH="/usr/local/nodejs/bin":$PATH

使用source 命令生效:

$ source ~/.bashrc

VSCode[可选]

这个可以不安装,如果不需要修改代码。

1.去官网下载安装包:vscode-x86_64.rpm

2.执行安装操作

$ rpm -ivh vscode-x86_64.rpm

3.测试安装是否成功。

$ code

如果能启动vscode则安装正确。

注:如果使用zip文件安装,跟.NET Core步骤一样。还需要安装unzip

需要安装C#扩展,在vscode中,按快捷键Ctrl + Shift + P,输入下面命令:

ext install csharp

创建控制台程序

步骤直接写在代码中。

$ #创建文件夹
$ mkdir ~/dotnetcore
$ mkdir ~/dotnetcore/ConsoleApp
$ cd ~/dotnetcore/ConsoleApp
$ #新建控制台程序
$ dotnet new
$ #还原nuget包
$ dotnet restore
$ #编译
$ dotnet build
$ #运行
$ dotnet run

实际操作图(示例):

创建ASP.NET程序

本文使用Yeoman脚手架创建。
如果不使用Yeoman创建,推荐阅读:ASP.NET Core 中文文档 第一章 入门

1.执行命令yo aspnet

选择第三项,Web Application。

2.选择UI框架,这里选Bootstrap:

3.输入项目名称,可以默认:

4.等待安装完成

5.按照上面提示命令,依次执行

$ cd WebApplication
$ #还原nuget包
$ dotnet restore
$ #编译
$ dotnet build
$ #创建SQLite数据库
$ dotnet ef database update
$ #运行
$ dotnet run

6.查看效果

原文:在CentOS 7上安装.NET Core R2跑Hello World

NET Core R2跑Hello World的更多相关文章

  1. 在CentOS 7上安装.NET Core R2跑Hello World

    前言 在上个月.NET Core出了最新版本预览版,只是在Window系统上试验了一下.原本想等发布正式版的时候在linux系统上试试,可能还需要一段时间,刚好有空可以折腾一下. 由于之前安装的Ubu ...

  2. [.NET Core].NET Core R2安装教程及Hello示例

    前言 前几天.NET Core发布了.NET Core 1.0.1 R2 预览版,之前想着有时间尝试下.NET Core.由于各种原因,就没有初试.刚好,前几天看到.NET Core发布新版本了,决定 ...

  3. .NET Core R2

    .NET Core R2安装及示例教程   前言 前几天.NET Core发布了.NET Core 1.0.1 R2 预览版,之前想着有时间尝试下.NET Core.由于各种原因,就没有初试.刚好,前 ...

  4. .NET Core R2安装及示例教程

    .NET Core R2安装及示例教程 Install for Windows - Visual Studio 2015 1 Download Visual Studio 2015 Make sure ...

  5. BDD实战篇 - .NET Core里跑Specflow - 可以跑集成测试和单元测试

    这是<如何用ABP框架快速完成项目 >系列中和DevOps系列文章其中一篇文章.   BDD很赞!比TDD先进很多,能够大大提高编码效率.   上一篇文章说了如何在.NET Core里安装 ...

  6. .NET Core 开发之旅 (1. .NET Core R2安装教程及Hello示例)

    前言 前几天.NET Core发布了.NET Core 1.0.1 R2 预览版,之前想着有时间尝试下.NET Core.由于各种原因,就没有初试.刚好,前几天看到.NET Core发布新版本了,决定 ...

  7. 结合Jexus + Kestrel 部署 asp.net core 生产环境

    ASP.NET Core 是微软的全新的框架.这一框架的目标 ︰ 跨平台 针对云应用优化 解除 System.Web 的依赖. 获得下面三个方面的优势,你可以把它认为是一个C# 版本的NodeJS: ...

  8. 微软架构师解读Windows Server 2008 R2新特性

    目前众多企业都开始为自己寻找一个更加适合自身发展的服务器操作平台.微软的Windows Server 2008 R2就是可以为大家解决服务器平台问题.微软最新的服务器平台Windows Server ...

  9. Jexus + Kestrel 部署 asp.net core

    结合Jexus + Kestrel 部署 asp.net core 生产环境 ASP.NET Core 是微软的全新的框架.这一框架的目标 ︰ 跨平台 针对云应用优化 解除 System.Web 的依 ...

随机推荐

  1. Java疯狂讲义(三)

  2. 查询sql语句耗时的方法!

    declare @times datetimeset @times=getdate()--要查询的sql语句select [注册数花费时间(毫秒)]=datediff(ms,@times,getdat ...

  3. document.domain与js跨域的问题

    以前如果要使iframe里面的脚本能访问parent的内容,但iframe和parent的二级域名相同,那一般都会在两者都写上document.domain="xxx.com" 以 ...

  4. epoll的LT和ET模式

    原理參考该博客 从man手冊中,得到ET和LT的详细描写叙述例如以下 EPOLL事件有两种模型: Edge Triggered (ET) Level Triggered (LT) 假如有这样一个样例: ...

  5. Java怎样高速构造JSON字符串

    目标:依据key/value高速构造一个JSON字符串作为參数提交到web REST API服务上. 分别測试里阿里巴巴的FastJson和Google Gson,终于我採用了Google Gson来 ...

  6. android中menu菜单的简单使用

    我认为menu用起来简洁方便,特别是在一些大一点的程序中我们早就厌烦了一遍遍的加button,设置了菜单可谓是事半功倍,简单省事. <1>先声明定义下你的menu: private sta ...

  7. iOS 开发http post 文件的上传

    iOS开发网络篇—文件的上传 说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中.本文介绍如何不借助第三方框架实现iOS开发中得文件上传. 由于过程较为复杂,因此本文只贴出部分关键代 ...

  8. 一个人的旅行(Dijkstra算法)

    这道题可用Dijkstra算法,好像还有floyd等算法,慢慢研究 Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途 ...

  9. 计算ptd

    因为公司的IC扫描sensor的频率常常和adapter中的noise频率重叠,导致IC接收到的数据出错.所以我们经常会用示波器看adapter的Noise,再用傅里叶变换找到相应应该回避的频段,包括 ...

  10. iOS开发之计算动态cell的高度并缓存

    项目中有个类似微博那样的动态cell,文字和图片的多少都不是确定的 刚开始使用autolayout,结果很多问题,最后我发现了一个框架 FDTemplateLayoutCell 写的很好,自动布局ce ...