dotNet Core开发环境搭建及简要说明
一、安装 .NET Core SDK
在 Windows 上使用 .NET Core 的最佳途径:使用Visual Studio. 免费下载地址: Visual Studio Community 2015 .下载安装之后
再下载以下两件东西:
- Visual Studio 2015 Update 3 (这个我安装了一天一夜,国外VPN估计可以解决这个问题)
- .NET Core 1.0.1 - VS 2015 Tooling Preview 2
当然你也可以使用 .NET Core SDK for Windows的命令行开发.Net Core App.你可以使用自己的编辑器或者使用 Visual Studio Code (免费).
二、创建.NET Core项目
1)通过命令行的方式
1.在自己想要的位置创建一个项目文件夹P
2. 在项目文件夹P下打开终端,执行dotnet new
这时会在文件夹P中生成program.cs project.json两个文件 (一个HelloWord Demo)
3.在项目文件夹P下打开终端,执行dotnet restore进行项目引用导入操作
4.在项目文件夹P下打开终端,通过终端执行dotnet build进行编译
这时会生成bin obj文件夹和一个project.lock.json文件
5.在项目文件夹P下打开终端,执行dotnet run即可运行
2)通过VS创建项目(选择ASP.NET WEB CORE...)

项目创建好之后,我们可以部署到其他操作系统上了,
下图为Ubuntu效果


说明,需要了解dotnet 以上几个命令.如dotnet run可以运行......
几个常见的donnet命令
| 指令 | 帮助 |
|---|---|
| dotnet new | 产生新的基本 .NET 项目内容 (包含 project.json、Program.cs 以及 NuGet.config |
| dotnet restore | 还原所参考的 NuGet 包 |
| dotnet build | 建造 .NET 项目 |
| dotnet publish | 产生可发行的 .NET 项目 (包含所属的 Runtime) |
| dotnet run | 编译与立即运行 .NET 项目 (较适用于 exe 型项目) |
| dotnet repl | 引导交互式的对话 |
| dotnet pack | 将项目的产出封装成 NuGet 包 |
三、项目结构解读
1)project.json文件
用过gradle 的朋友一看这文件就知道它的用意:
项目版本依赖、编译/发布相关管理
2)Startup.cs文件
ASP.NET Core的启动入口文件,OWIN开发一定不会陌生。项目运行时,编译器会在程序集中自动查找Startup.cs文件读取启动配置。
3)appsettings文件
应用配置,类似于.NET Framework上的Web.Config文件,开发者可以将系统参数通过键值对的方式写在appsettings文件中(如程序的连接字符串),而Startup类中也在构造器中通过如下代码使得程序能够识别该文件
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
}
四、dotnet core和.net framework 、mono之间的关系
微软在Windows平台上的.NET Framework的实现最为完整,但.NET Framework和windows绑定太深,难以跨平台。
而Xamarin主导的Mono项目在.NET 的基础类库实现上有一些不够完美。
.NET Core Framework是参考.NET Framework重新开发的.NET实现,Mono是.NET Framework的一个开源的、跨平台的实现。
.NET Core是一个模块化的开发栈,它是未来的所有.NET平台的基础。.NET Core Framework团队的高级程序经理Immo Landwerth在博客中也提到.NET Core开源有两大原因:1)作为跨平台的.NET的基础 ; 2)构建并受益于一个更为强大的生态系统。
目前.NET Core 只完成了.NET Framework的25%的功能
五、dotnet core中将要废除和保留的功能
链接:点击浏览
dotNet Core开发环境搭建及简要说明的更多相关文章
- 使用ubuntu做为dotnet core开发环境
一.安装google浏览器 1.下载安装包(传送门:http://www.google.cn/intl/zh-CN/chrome/browser/desktop/index.html) 2.使用sud ...
- WSL2 准备dotnet core开发环境
首先我们要知道WSL Ubuntu的版本,以便进行下一步操作: 我的是18.04,所以安装dot net SDK我们参考这里: https://docs.microsoft.com/en-us/dot ...
- [.net 面向对象程序设计深入](9).NET Core 跨平台开发环境搭建
[.net 面向对象程序设计深入](9).NET Core 跨平台开发环境搭建 1.概述 读前必备:认识.NET Core 上篇介绍了.NET 新的生态环境:包括.NET Framework..NET ...
- 腾讯云-搭建 .NET Core 开发环境
搭建 .NET Core 开发环境 安装 .Net Core 执行代码 任务时间:时间未知 .NET Core 的官方文档很详细,本实验带你建立一个.NET Core 1.1的Web运行环境,更多内容 ...
- mac OS.NE开发环境搭建
合肥程序员群:49313181. 合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入,申请备注填写姓名+技术+工作年限) Q Q:408365330 E-Mail:eg ...
- .Net Core(一)环境搭建与基本使用
.Net Core(一)环境搭建与基本使用 一.系统配置 a) Linux下如果想要打开类似任务管理器,可以使用top命令,在控制台会动态刷新CPU和内存占用.进程等信息.vmstat和free命令可 ...
- NET Core 开发环境
NET Core 开发环境 最近,一直在往.Net Core上迁移,随着工作的深入,发现.Net Core比.Net Framework好玩多了.不过目前还在windows下开发,虽然VisualSt ...
- 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子
本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...
- Windows 10 IoT Serials 1 - 针对Minnow Board MAX的Windows 10 IoT开发环境搭建
目前,微软针对Windows IoT计划支持的硬件包括树莓派2,Minnow Board MAX 和Galileo (Gen 1和Gen 2).其中,Galileo (Gen 1和Gen 2)运行的是 ...
随机推荐
- jquery.uploadify文件上传组件
1.jquery.uploadify简介 在ASP.NET中上传的控件有很多,比如.NET自带的FileUpload,以及SWFUpload,Uploadify等等,尤其后面两个控件的用户体验比较好, ...
- HTML DOM 介绍
本篇主要介绍DOM内容.DOM 节点.节点属性以及获取HTML元素的方法. 目录 1. 介绍 DOM:介绍DOM,以及对DOM分类和功能的说明. 2. DOM 节点:介绍DOM节点分类和节点层次. 3 ...
- SQL Server-表表达式基础回顾(二十四)
前言 从这一节开始我们开始进入表表达式章节的学习,Microsoft SQL Server支持4种类型的表表达式:派生表.公用表表达式(CTE).视图.内嵌表值函数(TVF).简短的内容,深入的理解, ...
- 如何在网页中提取Email地址
开博好久了,今天第一次发表技术文档,之前总是将一些好的事例保存在电脑,时间久了找起来也很麻烦,所以还是放在博客里进行归类比较方便,这样也能将自己在学习过程中的一些心得体会分享给大家,也能给需要的人一点 ...
- 读python源码--对象模型
学python的人都知道,python中一切皆是对象,如class生成的对象是对象,class本身也是对象,int是对象,str是对象,dict是对象....所以,我很好奇,python是怎样实现这些 ...
- 如果你也会C#,那不妨了解下F#(7):面向对象编程之继承、接口和泛型
前言 面向对象三大基本特性:封装.继承.多态.上一篇中介绍了类的定义,下面就了解下F#中继承和多态的使用吧.
- bzoj1723--前缀和(水题)
题目大意: 你难以想象贝茜看到一只妖精在牧场出现时是多么的惊讶.她不是傻瓜,立即猛扑过去,用她那灵活的牛蹄抓住了那只妖精. "你可以许一个愿望,傻大个儿!"妖精说. ...
- 简单分析JavaScript中的面向对象
初学JavaScript的时候有人会认为JavaScript不是一门面向对象的语言,因为JS是没有类的概念的,但是这并不代表JavaScript没有对象的存在,而且JavaScript也提供了其它的方 ...
- JavaScript将字符串中的每一个单词的第一个字母变为大写其余均为小写
要求: 确保字符串的每个单词首字母都大写,其余部分小写. 这里我自己写了两种方法,或者说是一种方法,另一个是该方法的变种. 第一种: function titleCase(str) { var new ...
- swift 中关于open ,public ,fileprivate,private ,internal,修饰的说明
关于 swift 中的open ,public ,fileprivate,private, internal的区别 以下按照修饰关键字的访问约束范围 从约束的限定范围大到小的排序进行说明 open,p ...