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)运行的是 ...
随机推荐
- [译]ZOOKEEPER RECIPES-Leader Election
选主 使用ZooKeeper选主的一个简单方法是,在创建znode时使用Sequence和Ephemeral标志.主要思想是,使用一个znode,比如"/election",每个客 ...
- Python应用03 使用PyQT制作视频播放器
作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁任何形式转载. 最近研究了Python的两个GUI包,Tkinter和PyQT.这两个GUI包的底层分别是Tcl/ ...
- Photoshop将普通照片快速制作二次元漫画风格效果
今天为大家分享Photoshop将普通照片快速制作二次元漫画风格效果,教程很不错,对于喜欢漫画的朋友可以参考本文,希望能对大家有所帮助! 一提到日本动画电影,大家第一印象肯定是宫崎骏,但是日本除了宫崎 ...
- H5坦克大战之【画出坦克】
今天是个特殊的日子,圣诞节,也是周末,在这里先祝大家圣诞快乐!喜庆的日子,我们可以稍微放松一下,扯一扯昨天雷霆对战凯尔特人的比赛,这场比赛大威少又双叒叕拿下三双,而且是一个45+11+11的超级三双, ...
- ASP.NET Core CORS 简单使用
CORS 全称"跨域资源共享"(Cross-origin resource sharing). 跨域就是不同域之间进行数据访问,比如 a.sample.com 访问 b.sampl ...
- IT持续集成之质量管理
研发工具生态 质量相关工作 一次编译产出测试包与上线包 !从源头保证版本的⼀一致性!代码质量控制! 全⽅方位的⾃自动化测试体系保证! 提测冒烟效率! 全⾃自动上线流程杜绝⼈人⼯工犯错! 生产环境应⽤用 ...
- Android之Dedug--Circular dependencies cannot exist in AnimatorSet
今日,在学习AnimatorSet时,使用play.with.after.before时,代码书写如下: ObjectAnimator animator1 = ObjectAnimator.ofFlo ...
- ViewController respondsToSelector 错误的解决方法
原因解析:(来自别人博客分析)某个公共类或系统提供的控件,存在delegate方法,当创建此公共控件的容器类已经销毁,而这个控件对应的服务是在其它run loop中进行的,控件销毁或者需要进行状态通知 ...
- Greenplum 的分布式框架结构
Greenplum 的分布式框架结构 1.基本架构 Greenplum(以下简称 GPDB)是一款典型的 Shared-Nothing 分布式数据库系统.GPDB 拥有一个中控节点( Master ) ...
- Linux设备管理(五)_写自己的sysfs接口
我们在Linux设备管理(一)_kobject, kset,ktype分析一文中介绍了kobject的相关知识,在Linux设备管理(二)_从cdev_add说起和Linux设备管理(三)_总线设备的 ...