循序渐进学.Net Core Web Api开发系列【1】:开发环境
系列目录
本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi
一、本篇概述
本篇不打算描述如何通过Visual Studio创建一个项目之类的话题,主要描述以下内容:
1、使用NuGet和Bower引入第三方库
2、Linux下安装运行环境
3、关于安装虚拟机时碰到的网络设置的问题
实验环境:Windows 10 ,Visual Studio 2017 ,VM 14 , CentOS 7
二、使用Visual Studio 开发项目
不管你是使用Windows或MacOS操作系统,都可以采用Visual Studio 进行开发。.NET Core不再采用下载dll文件并copy到项目中的方式来引入第三方类库,而是采用NuGet工具进行第三方库的管理,NuGet只能管理类库,对于前端开发的js包需要通过Bower进行管理。
1、NuGet
如果我在项目中需要用到JSON转换的工具,在项目上鼠标右键选择“管理NuGet程序包”,在浏览窗口输入json,选择需要的包,比如Newtonsoft.Json,然后选择版本,安装即可。

2、Bower
不知什么原因,我用的VS版本,项目右键无法找到“管理Bower程序包”的菜单,解决方案:
在项目根目录添加两个文件
文件一: bower.json ,内容如下:
{
"name": "asp.net",
"private": true,
"dependencies": {
}
}
文件二: .bowerrc ,内容如下:
{
"directory": "wwwroot/lib"
}
此时在项目右键就可以选择“管理Bower程序包”了。
用法和NuGet类似:在浏览页搜索要找的包,如:jQuery,选择合适的包和版本,安装即可。

三、使用Linux环境运行项目
我选择的Linux环境为CentOS7,最初在CentOS6.5下安装过SDK,但没有成功,后来选择了7以上版本就OK了。
安装步骤如下:
# rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
# yum update
# yum install libunwind libicu
# yum install dotnet-sdk-2.1.
第一行代码是添加资源库
第二行代码为更新操作系统
第三行代码为安装依赖包
第四行代码为安装SDK
由于版本变化等原因,以上代码不一定永远可以成功执行,最新的安装指令或其他平台安装方法可以在此查询:Install .NET Core SDK
安装完成后可以运行以下指令来确认是否安装成功。
# dotnet --info
把开发好的项目Copy到Linux环境,在其项目目录下运行 dotnet run 即可启动项目,此时为源码项目方式运行,在开发环境我们对项目进行发布,将发布的项目文件夹Copy到Linux环境,在项目文件夹下运行dotnet WebApplication4.dll 即可启动项目。关于项目的发布后面会单独介绍。
四、虚拟机的网络设置
不是每个人手上都有充足的Linux机器资源,采用虚拟机来建立学习环境还是很有必要的。不管是采用VM还是VisualBox,整个安装过程都是比较简单的,可能唯一有疑问的地方就是选择什么类型的虚拟网卡。
vmware为我们提供了三种网络工作模式,它们分别是:Bridged(桥接模式)、NAT(网络地址转换模式)、Host-Only(仅主机模式)。
这里不对三种模式进行详细探讨,直接给出建议:
1、如果是在服务器上安装虚拟机建议采用桥接模式,此时虚拟机将成为网络里的一台机器;
2、如果是在本机上安装虚拟机,建议采用NAT模式,此时虚拟机只有本机可以访问;
如果是NAT模式可以采用DHCP方式获取IP地址,如果是桥接模式建议配置静态IP地址。
设置网络IP配置的指令:
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
桥接模式的配置信息
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=
NETMASK=
GATEWAY=
DNS1=
#以上4个数字参考路由器设置,和普通服务器类似
NAT模式的配置信息
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
配置完成后可以通过 # ifconfig 指令查询本机IP信息。
循序渐进学.Net Core Web Api开发系列【1】:开发环境的更多相关文章
- 循序渐进学.Net Core Web Api开发系列【0】:序言与目录
一.序言 我大约在2003年时候开始接触到.NET,最初在.NET framework 1.1版本下写过代码,曾经做过WinForm和ASP.NET开发.大约在2010年的时候转型JAVA环境,这么多 ...
- 循序渐进学.Net Core Web Api开发系列【16】:应用安全续-加密与解密
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.概述 应用安全除 ...
- 循序渐进学.Net Core Web Api开发系列【15】:应用安全
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.概述 本篇介绍W ...
- 循序渐进学.Net Core Web Api开发系列【14】:异常处理
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.概述 本篇介绍异 ...
- 循序渐进学.Net Core Web Api开发系列【13】:中间件(Middleware)
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.概述 本篇介绍如 ...
- 循序渐进学.Net Core Web Api开发系列【12】:缓存
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.概述 本篇介绍如 ...
- 循序渐进学.Net Core Web Api开发系列【11】:依赖注入
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.概述 本篇介绍如 ...
- 循序渐进学.Net Core Web Api开发系列【10】:使用日志
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.本篇概述 本篇介 ...
- 循序渐进学.Net Core Web Api开发系列【9】:常用的数据库操作
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.概述 本篇描述一 ...
- 循序渐进学.Net Core Web Api开发系列【8】:访问数据库(基本功能)
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.概述 本篇讨论如 ...
随机推荐
- kubernetes配置secret拉取私仓镜像
2017.05.10 19:48* 字数 390 阅读 5216评论 0喜欢 8 对于公司内部的项目, 我们不可能使用公有开放的镜像仓库, 一般情况可能会花钱买docker私仓服务, 或者说自己在服务 ...
- JavaScript实现ajax发送表单数据
知识点: 1.重置表单数据 2.获取表单数据(纯JavaScript) 3.设置表单数据(纯JavaScript) 4.ajax发送数据到客户端 (1)设置请求头,自己组合数据 (2)实例化表单对象, ...
- 流媒体技术学习笔记之(三)Nginx-Rtmp-Module统计某频道在线观看流的客户数
获得订阅者人数,可以方便地显示观看流的客户数. 查看已经安装好的模块 /usr/local/nginx/sbin/nginx -V 安装从源编译Nginx和Nginx-RTMP所需的工具 sudo a ...
- Extending Markov to Hidden Markov
Extending Markov to Hidden Markov a tutorial on hidden markov models, Hidden Markov Models, hidden m ...
- Raid 磁盘阵列
raid 原理与区别 raid0至少2块硬盘.吞吐量大,性能好,同时读写,但损坏一个就完蛋 raid1至少2块硬盘.相当镜像,一个存储,一个备份.安全性比较高.但是性能比0弱 raid5至少3块硬盘. ...
- Java使用WebSocket
网页端的消息推送,一般有以下方式: 轮询方式:客户端定时向服务端发送ajax请求,服务器接收到请求后马上返回消息并关闭连接. 优点:后端程序编写比较容易. 缺点:TCP的建立和关闭操作浪费时间和带宽, ...
- js如何用json 读取C#的Dictionary
1. .net中Controller里面的方法 /// <summary> /// 流程图 /// </summary> /// <returns>返回对象Json ...
- 使用 scm-manager 搭建 git/svn 代码管理仓库(二)
主要介绍scm的配置. 1.配置为在Windows服务中启动scm-manager的启动方式有多种,可以在DOS(即命令行CMD模式)中启动,也可以在Windows服务中启动. 下面我们采用Windo ...
- decimal模块
简介 decimal意思为十进制,这个模块提供了十进制浮点运算支持. 常用方法 1.可以传递给Decimal整型或者字符串参数,但不能是浮点数据,因为浮点数据本身就不准确. 2.要从浮点数据转换为De ...
- Linux驱动技术(四) _异步通知技术【转】
转自:https://www.cnblogs.com/xiaojiang1025/p/6376561.html 异步通知的全称是"信号驱动的异步IO",通过"信号&quo ...