[.net 面向对象程序设计深入](9).NET Core 跨平台开发环境搭建
[.net 面向对象程序设计深入](9).NET Core 跨平台开发环境搭建
1、概述
读前必备:认识.NET Core
上篇介绍了.NET 新的生态环境:包括.NET Framework、.NET Core、Xamarin三驾马车
其中.NET Framework是基于Windows平台专属的开发框架.
.NET Core则可以在Window,macOS,Linux等系统上的开发和部署,并且可以在硬件设备,云服务,和嵌入式/物联网方案中进行使用.
Xamarin用于构建移动APP,包含iOS、 OS X 、Android等。
本篇重点介绍,如何在多个平台上搭建.NET Core的开发环境。
2、基于Windows的.NET Core开发环境搭建
(1)开发工具:Visual Studio 2017/2015、Visual Studio Code
(2)Vs2017开发环境:使用Vs2017开发环境非常简单,VS2017安装后,就已经集成了支撑.NET Core运行的所有组件
a.下载安装VS:VS2017官方下载地址 VS Code 1.8中文版
b.创建.NET Core应用:创建基于.NET Core的应用程序,打开VS2017,创建项目,如下图:
需要注意的是:.NET Core你在选择底层标准Framework库的时候,最低版本只能选择Framework 4.5,之前的版本是不能支持的。
c.编码、调试 、运行。这和使用.NET Framework创建基于Windows环境的.NET应用程序类似。如下:
(3)使用.NET Command Line Interface(CLI)创建项目,除了VS之外,你也可以使用命令行来创建一个.NET Core项目
a.安装.NET Core SDK for Windows. 使用命令行创建项目,首先要安装.NET Core SDK for Windows,官方下载地址 64位 32位
b.创建项目,下面是一些常用命令(以下命令同样适用于MacOS、Linux):
命令 | 说明 |
dotnet new | 使用 C# 语言初始化用于类库或控制台应用程序的有效项目。 |
dotnet restore | 还原在指定项目的 project.json 文件中定义的依赖项。依赖项通常是您在应用程序中使用的 NuGet 包。 |
dotnet build | 生成您的代码! 此命令将生成适用于您的项目的中间语言 (IL) 二进制。如果项目是控制台应用程序,则产生的输出是可执行的,您可以立即运行。默认情况下,生成命令会将生成的程序集和可执行文件(如果适用)输出到调用位置目录的 bin 目录中。 |
dotnet test | 如果不支持运行测试,则不会出现适合的工具。此命令让您可以使用在 project.json 文件中指定的运行程序运行一组测试。目前支持 xUnit 和 NUnit 测试运行程序。 |
dotnet publish | 发布在目标计算机上运行的应用程序。 |
dotnet pack | pack 命令会把您的项目打包成 NuGet 包。输出一组 nupkg 文件后,您可以将其上载至您的源,或使用本地文件夹替代将其用于还原操作。 |
dotnet run | 运行命令将编译并运行您的应用程序。您可以将其看作没有 Visual Studio 的 Ctrl+F5 模拟。 |
除带有包的命令外,您还具有将其他命令添加为 project.json 中的工具并将其还原的选项。它们被打包为 NuGet 包,可提供适合且易用使用和理解的扩展性模型。
下面我们尝试使用命令行来创建一个控制台应用程序
运行-CMD,依次创建目录,打开目录,创建.NET Core控制台应用程序 如下:
mkdir DotnetCoreTest
cd e:\DotnetCoreTest
dotnet new console
显示创建“控制台应用程序”成功。
c.调试、运行
然后使用dotnet restore 和dotnet run命令
dotnet restore
dotnet run
可以看到运行结果。下面是Command Line创建的控制台应用程序目录,和我们使用vs创建的一样
关于命令行工具详细介绍,请参照:NET Core 命令行接口工具
3、基于Linux的.NET Core开发环境搭建
(1)开发工具:Visual Studio Code(跨平台开发工具,支持Windows、Linux、MacOS等)
(2)开发环境搭建:请参照前面的文章Linux部分:构建跨平台.NET开发环境(Windows/Mac OS X/Linux)
4、基于MacOS的.NET Core开发环境搭建
(1)开发工具:Visual Studio Code(跨平台开发工具)
(2)开发环境搭建
a.安装macOS 10.11或更高(64位)
b.安装最新版本OpenSSL,也可以使用:Homebrew。
c.安装.NET Core SDK for Mac OS,下载地址
d.使用Visual Studio for Mac 2017开发并测试代码
(3)Visual Studio for Mac 2017,下面简单介绍一下Visual Studio for Mac 2017使用
a.下载地址
b.创建并运行
图1,运行主界面
图2,创建项目
图3,代码界面
图5,熟悉的解决方案管理器
图6,运行MVC项目
5、总结
本篇主要介绍了.NET Core在Windows、Linux、MacOS平台的开发环境搭建过程,如果只是创建运行于Windwos系统下的.NET Core应用程序,那么.NET Framework将是最佳选择。如果要考虑到跨平台开发、跨平台部署,使用.NET Core才是您的最佳选择。
==============================================================================================
<如果对你有帮助,记得点一下推荐哦,如有有不明白或错误之处,请多交流>
<转载声明:技术需要共享精神,欢迎转载本博客中的文章,但请注明版权及URL>
软件管理及.NET 技术交流群:467189533
==============================================================================================
[.net 面向对象程序设计深入](9).NET Core 跨平台开发环境搭建的更多相关文章
- visual studio 2019 + cmake 实现windows linux跨平台开发环境搭建
visual studio 2019开始支持cmake跨平台开发. 以前cmake项目需要先生成vs项目,然后vs直接使用vs项目开发.现在可以直接用vs2019创建或打开cmake项目. 使用vis ...
- 《ASP.NET Core跨平台开发从入门到实战》Web API自定义格式化protobuf
<ASP.NET Core跨平台开发从入门到实战>样章节 Web API自定义格式化protobuf. 样章 Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于 ...
- .Net Core 跨平台开发实战-服务器缓存:本地缓存、分布式缓存、自定义缓存
.Net Core 跨平台开发实战-服务器缓存:本地缓存.分布式缓存.自定义缓存 1.概述 系统性能优化的第一步就是使用缓存!什么是缓存?缓存是一种效果,就是把数据结果存在某个介质中,下次直接重用.根 ...
- 20175325 《JAVA程序设计》实验二《JAVA开发环境的熟悉》实验报告
20175325 <JAVA程序设计>实验二<JAVA开发环境的熟悉>实验报告 一.实验报告封面 课程:Java程序设计 班级:1753班 姓名:石淦铭 学号:20175325 ...
- 20165219 《Java程序设计》实验二(Java开发环境的熟悉)实验报告
20165219 <Java程序设计>实验二(Java开发环境的熟悉)实验报告 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:王彦博 学号:20165219 成绩: 指 ...
- 快速打造跨平台开发环境 vagrant + virtualbox + box
工欲善其事必先利其器,开发环境 和 开发工具 就是 我们开发人员的剑,所以我们需要一个快并且好用的剑 刚开始做开发的时候的都是把开发环境 配置在 自己的电脑上,随着后面我们接触的东西越来越多,慢慢的电 ...
- Windows7 x64 跨平台开发环境安装配置
======================================================================= Windows7 x64 跨平台开发环境安装配置 201 ...
- 20175325 《JAVA程序设计》实验一 《JAVA开发环境的熟悉》实验报告
20175325 <JAVA程序设计>实验一 <JAVA开发环境的熟悉>实验报告 一.实验内容及步骤 (一).实验一: 实验要求: 0 参考实验要求 1 建立"自己学 ...
- # 2019-2020-3 《Java 程序设计》实验一:Java开发环境的熟悉
2019-2020-3 <Java 程序设计>实验一:Java开发环境的熟悉-------1 一.实验要求: 1 建立"自己学号exp1"的目录 2 在"自己 ...
随机推荐
- pch 文件
PCH的文件的用途: 在实际的项目开发中,如果很多地方都在使用某个类的头文件,很多地方都在使用同一个”宏”的时候:很多地方用到了NSLog()函数, 在app发布的时候,想清除掉时,此时就需 ...
- californium 框架设计分析
Californium 源码分析 1. Californium 项目简介 Californium 是一款基于Java实现的Coap技术框架,该项目实现了Coap协议的各种请求响应定义,支持CON/NO ...
- phpcms 列表项 内容项
根据上一篇内容继续 首页替换完成后 接下来替换列表页 首先把列表的静态网页放入相应模板的content文件夹下,并改名为 list.html 并且创建栏目时选择下面一项 同样,头尾去掉,利用{temp ...
- 一步一步在Windows中使用MyCat负载均衡 上篇
传统关系型数据库的分布式开发通常需要自己做,不仅耗时耗力而且效果不是很理想,当想快速搭建时,最初想到的是看有没有第三方,网上牛人还是很多的,做得比较好的其中之一Mycat,它是开源的分布式数据库系统, ...
- setTimeout()和setInterval()的用法
JS里设定延时: 使用SetInterval和设定延时函数setTimeout 很类似.setTimeout 运用在延迟一段时间,再进行某项操作. setTimeout("function& ...
- 如何在 Windows上编译Objective-C
Objective-C现在几乎已经变成了苹果的专利了,可以直接在苹果的Xcode上编译Objective-C程序,但是在Windows平台下的编译工具就寥寥无几了,本身这种语言用的人就不是很多.今天在 ...
- 全面理解java异常机制
在理想状态下,程序会按照我们预想的步骤一步一步的执行,但是即使你是大V,你也不可避免出错,所以java为我们提供了异常机制.本文将会从以下几个方面介绍java中的异常机制: 异常机制的层次结构 异常的 ...
- HTML学习二
继续上一次的学习: <html> <head> <title>新增雇员</title> <script language="javasc ...
- 浅谈iOS程序员的成长和进阶
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...
- android学习2——RelativeLayout
相对布局管理器,一个View的位置是相对于另外一个View定义的. <?xml version="1.0" encoding="utf-8"?> & ...