在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. Nginx 之三:nginx服务器模块、web请求处理机制及事件驱动模型、进程功能和进程间通信

    一:Nginx的模块化结构设计: 1.核心模块:指的是nginx服务器运行当中必不可少的模块,这些模块提供了最基本最核心的服务,比如权限控制.进程管理.错误日志.事件驱动.正则表达式解析等,nginx ...

  2. 解决phpmyadmin配置文件的权限问题

    如果部署的phpmyadmin权限为所有人可写,即权限为777,就会报”Wrong permissions on configuration file, should not be world wri ...

  3. linux-2.6.33移植到FL2440

    宿主机:ubuntu10.04 目标机:fl2440 交叉编译器:arm-linux-gcc-3.4.1 交叉编译器路径:/usr/local/arm/3.4.1 要移植的内核版本:linux-2.6 ...

  4. Swift主题色顶级解决方案一

    一.常规主题色使用点 应用在发布前都会对其主题色进行设置,以统一应用的风格(可能有多套主题).在主题色设置上有几个方面,如下: 1.TabBar部分,设置图片高亮.文本高度颜色 2.Navigatio ...

  5. 卸载了PL/SQL Developer,说一下与Toad for Oracle的对照

    曾经一直用PL/SQL Developer来管理Oracle.发现真的使用起来非常不方便.打开非常卡,并且界面左上角总是多出那个框,怎么都无法设置默认隐藏掉. 唯一让人认为非常值得的就是有一个美化工具 ...

  6. AS3清空数组的四种方法

    第一种最简单的方法是: var arr:Array = ["a", "b", "c", "d", "e&quo ...

  7. iOS UIWebView 之 UIProgressView

    之前做等待跳转都是用UIActivityIndicatorView ,后来做webView 加载页面的时候,发现了一个特别好用又超级炫酷的加载提示NJKWebViewProgress,作者巧妙的通过计 ...

  8. 内联函数 inline

    (一)inline函数(摘自C++ Primer的第三版) 在函数声明或定义中函数返回类型前加上关键字inline即把min()指定为内联. inline int min(int first, int ...

  9. js中的总结汇总(以后的都收集到这篇)

    点1:js中的比较字符串是否相等,js中是用"=="这个来判断是否相等,这点跟java中不一样,java中是.equals()这种方法. 在之前写的ajax的demo中,因为用了. ...

  10. 设计模式 ( 二十 ) 访问者模式Visitor(对象行为型)

    设计模式 ( 二十 ) 访问者模式Visitor(对象行为型) 1.概述 在软件开发过程中,对于系统中的某些对象,它们存储在同一个集合collection中,且具有不同的类型,而且对于该集合中的对象, ...