葡京网投哪个正规 > 首页 > 系统上运行,消除误解

原标题:系统上运行,消除误解

浏览次数:79 时间:2020-01-19

.NET Core 运行时已经看到了实现真正的跨平台的美好前景,它最终出现在 Linux 和 Mac OS X 平台上。在上周举办的 Microsoft Build 大会上,来自微软的项目经理 Habib Heydarian 为听众分析了这一举措对开发者们所带来的益处,并告诉开发者们如何开始探索这些新的机会。在名为“让 .NET 实现跨平台”的一场讲座中,Heydarian 首先介绍了开发者如何进行一次全新的 .NET Core 安装。

2014年11月12日,ASP.NET之父、微软云计算与企业级产品工程部执行副总裁Scott Guthrie,在Connect全球开发者在线会议上宣布,微软将开源全部.NET核心运行时,并将.NET 扩展为可在 Linux 和 Mac OS 平台上运行。.NET核心运行时将基于MIT开源许可协议发布,其中将包括执行.NET代码所需的一切项目——CLR、JIT编译器、垃圾收集器(GC)和核心.NET基础类库。

本文是按照英文原文:Installing ASP.NET 5 On Mac OS安装时遇到的问题的总结Blog。

 

首先,所有的 .NET 代码都包含在一个单独的文件夹中,而无需将它安装在某个系统级别的位置。这样,只要愿意,每个 .NET 应用都可以使用一个完全不同的编译版本。并且在 Windows 系统上进行编译的代码也能够在 Mac OS X 和 Linux 系统上运行。

自从11月公布这一计划以来微软已将自己的关键技术都进行了开源,包括.NET Core、Roslyn、ASP.NET 5、MSbuild、WCF、OData等。按照微软ASP.NET 5 的路线图(详见 ASP.NET 5 Schedule and Roadmap),2015年9月2日已经发布了里程碑的跨平台版本,完成.NET Core 的跨平台开发,为 Mac 与 Linux 平台提供基于 .NET Core 的 dnx,实现完整的 .NET 跨平台开发工作流,并基于跨平台 .NET 开发一些应用案例,等到下个月初发布Beta 8的的时候就进入特性冻结阶段了。

原文提示如下:

     .NET Core 是.NET Framework的新一代版本,是微软开发的第一个官方版本,具有跨平台 (Windows、Mac OSX、Linux) 能力的应用程序开发框架 (Application Framework),未来也将会支持 FreeBSD 与 Alpine 平台,也是微软在一开始发展时就开源的软件平台[1]  ,它经常也会拿来和现有的开源 .NET 平台 Mono 比较。

图片 1

微软实际上一共推出了三个以MIT方式授权的源代码集:

Installing ASP.NET 5 On Mac OS X
By Steve Smith

     由于 .NET Core 的开发目标是跨平台的 .NET 平台,因此 .NET Core 会包含 .NET Framework 的类库,但与 .NET Framework 不同的是 .NET Core 采用包化 (Packages) 的管理方式,应用程序只需要获取需要的组件即可,与 .NET Framework 大包式安装的作法截然不同,同时各包亦有独立的版本线 (Version line),不再硬性要求应用程序跟随主线版本。

要在以上系统中运行一个基于命令行的标准 HelloWorld 程序,可使用以下方式:

  • ReferenceSource

  • CoreFX

  • CoreCLR

ASP.NET 5 runs on the .NET Execution Environment (DNX), which is available on multiple platforms, including OS X. This article describes how to install DNX, and therefore ASP.NET 5, on OS X, using Homebrew.

  .NET Core 是由许多项目所组成:

./corerun HelloWorld.exe

// corereun 是一个原生的运行 app 的环境

// 在 Windows 上,引导 .NET 应用的功能已经内建于操作系统中了

图片 2

In this article:
Install ASP.NET 5 on OS X
Install ASP.NET 5 on OS X
ASP.NET 5 requires DNX, which is installed and managed by the .NET Version Manager (DNVM). The DNVM is easily installed using a tool called Homebrew, which will also install the correct version of Mono for OS X.

除了基本的类库(Core FX) 之外,

在非 Windows 平台上使用 .NET,就意味着开发者们能够使用 ASP.NET 5、CoreCLR,并且从以下共享的功能中受益了:

上图中.NET Core 5 可以完整跨平台,.NET Framework 4.6 运行在Windows平台,对应Mono 4.2 版本运行在Linux,Mac平台。要理清楚.NET Core和 .NET 、Mono之间的关系, 这个在.NET Core的 有详细的说明。简单的说就是.NET Core是.NET Framework的子集,包含了.NET 运行时库的核心功能,在跨平台和资源受限环境中使用,.NET Framework还以MIT协议开源了ReferenceSource , ReferenceSource 是和Windows平台的有较深的耦合关系,Mono团队将ReferenceSource项目中的代码整合进入Mono,将Mono项目中一些有bug或未完成的组件替换为.NET的对应代码,你可以在Trello网站上跟踪该项目的进展情况,Mono最新的4.2 版本已经基本上完成了代码整合工作。通过Mono和微软的.NET团队的合作,把.NET Core的代码融到Mono项目中,同时把Mono中的平台依赖代码贡献给.NET,现在可以实现完整的.NET堆栈的跨平台。也就说在.NET Core推出之后,.NET Framework与Mono将基于.NET Core重新构建。.NET Framework将成为.NET Core在Windows上的一个发行版,Mono将成为.NET Core的一个跨平台发行版。

Install Homebrew
The first step is to install Homebrew if it's not already installed. This can be done from a Terminal prompt using this script:

也包含采用 RyuJIT 编译的运行平台 Core CLR、

  1. 运行时组件
    • 64 位的 JIT 编译器与 SIMD 指令
    • 垃圾回收器
  2. 类库
    • 基础类库
    • NuGet 包
  3. 编译器
    • .NET 编译器平台(Roslyn)

开源是大势所趋,就在6年前,各大公司和厂商还在讨论是否应该开源,但现在大家讨论的则是如何更好地开源。随着互联网时代的发展和成熟,开源已经成为标配。从Github的.NET Core开源项目来看,目前已经有将近8273个star,老牌的Mono项目也才3769个Star,已经说明开发社区对微软开源的支持。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

编译器平台.NET Compiler Platform、

如何获取 .NET Core

对于 Mac OS X 开发者来说,推荐的方式是使用 Homebrew 以获取必要的组件。当安装好 Homebrew 之后,就可以通过以下命令获取 .NET 组件了:

brew tap aspnet/dnx
brew update
brew install dnvm
dnx . kestrel

Linux 用户可以从该项目的网站上下载一个包含了所有必要组件的 TAR 文件,随后按照以下方式进行安装:

tar zxvf PartsUnlimited-demo-app-linux.tar.gz -C ~/
source ~/.dnx/dnvm/dnvm.sh
dnvm use 1.0.0-beta5-11624 -r coreclr -arch x64
dnx . kestrel

你一定注意到了一点,在这个两个平台上所运行的最后一条指令都是 kestrel 的执行。Kestrel 也正是“跨平台的 ASP.NET 5 web 服务器”,DNVM 则是 .NET 的版本管理器。目前,该项目只支持 64 位平台的 Linux 和 Mac OS X。开发团队仍然在继续研究如何让它支持 32 位的系统。

紧随 Linux 和 Mac OS X 之后,对 FreeBSD 的支持最近也加入到该项目中。对于这三个平台来说,目前还存在着一个限制,那就是从源代码编译 .NET Core 的功能仅限于 Windows 版本。要从源代码编译 .NET,开发者需要首先编译 CoreCLR,然后再编译 CoreFX。

正如 Windows 平台上的 .NET 开发者能够利用平台调用(PInvoke)功能一样,Linux 平台上的开发者也能够使用 DLL Import 这一命令:

[DllImport (“libc”)]
private static extern int printf (string format);

Printf (“Hello, //BUILD 2015!n”);

相比Java体系成熟的生态圈,目前.NET在社区生态系统建设上还需要一段比较长的时间来完善。生态系统不单单是开发者,还需要包括他背后的就职公司、他开发的产品面向的客户、开发者的合作伙伴等等,当然还有微软。开发者能够从.NET这个平台上更容易创业、具有多语言跨平台的、具备快速部署优势、适合迭代开发的,涵盖从服务端到客户端、移动端,物联网IOT,具有超级高效率的Visual Studio Community 2015。除此之外要让开发者有参与感,他在开发方面的经验和知识能够通过生态系统分享出去,影响其他人和公司,并且他的意见能够得到及时的反馈,那么这种参与感会吸引开发者。

The installer will inform you of the steps it is taking and pause before proceeding. You can learn more about Homebrew here.

采用 AOT 编译技术运行最优化的包 Core RT (.NET Core Runtime),

下一步计划

Heydarian 在演讲余下的部分谈到了该团队下一步的计划,以及微软对这一项目的目标。随着 Visual Studio 不断地扩展到非 Windows 的平台上,微软希望能够改进在这些新环境中的调试功能。对于 VS2015 来说,就是要实现远程调试。而对于 VS Code 来说,首先要从实现本地调试开始。

另一个改进的方向是整体的上线预备。为了在这方面有所突破,团队打算整合 MSBuild 的支持,并消除目前对 Mono 在这方面功能的依赖。

Heydarian 表示,当 .NET 在 Linux 和 Mac OS X 平台上正式发布,并成为“RTM”版本之后,微软将做出以下正式的承诺:

  1. .NET Core 应用能够在基于 Linux 的生产环境中运行,包括 Docker、本地部署和云端部署
  2. 开发者可以使用 VS Code 或其它任何喜爱的编辑器,对运行在 Mac OS X 环境中的 .NET 代码进行编辑、编译与调试
  3. 全部使用无关平台特性创建的应用在 Windows 与其它平台上具有相同的行为
  4. .NET Core 将把现有 .NET 云端生态系统的类库也带到 Linux 上
  5. 微软对 .NET 在 Linux 上的支持、服务和维护与其它微软产品一视同仁

最近几年,微软对于开源越来越支持,但是给开发社区的形象还没有转变过来。有篇文章《对微软技术的典型误解和偏见》写的非常贴切,对微软技术的误解与偏见在社区里是很微妙的,不少人对微软的开发技术栈有一些由来已久的偏见。微软已经做行业老大很多年,其在闭源方面的印象给开发者影响太深刻了,很难在短时间内扭转。需要持续的运营投入和影响。

到这一步,可能会出现 brew 已经安装了。
图片 3

以及跨平台的 MSIL 编译器 LLILC (LLVM-based MSIL Compiler) 等项目.

在你的应用中加入对 Linux 和 Mac OS X 的支持

微软将推出一套 API 可移植性工具,用于对现有的代码进行分析,找出所需的程序集和目标平台。目前为止,唯一对兼容性进行了测试的 Linux 分发平台是 Ubuntu 14.04.2 LTS。虽然没有明确地表示不支持其它的 Linux 分发平台,但无法保证在这些平台上是否能够正常运行。

Heydarian 认为目前来看,微软所提供的 .NET 与 Mono 版本相比,所针对的市场方向并不相同。Haydarian 表示:“……虽然[Mono]在移动场合的表现优秀,但它并不是为服务器或云端生产环境的使用场景而设计的……”,而 .NET Core 倾向于在具有高吞吐量、高伸缩性,以及更高的修复前平均时间(MTTF)的服务器环境中所使用。

希望通过 .NET 即将提供的功能,从跨平台方式中受益的开发者可以首先从 VS2015RC 中的 ASP.NET 5 项目模板开始打造及测试应用,并且参考 GitHub 上的 ASP.NET 示例应用 Parts Unlimited。凡是能够在 Windows 上的 ASP.NET 5 中成功运行的应用,一旦等到 .NET Core RTM 之后,就能够无缝地迁移至 Linux 平台上。

其实微软过去在社区运营方面很有经验,包括各种线上线下的活动,还有MVP等奖励机制,在开源方面,微软可以继续从前的动作,我本人是微软连任10年的ASP.NET方向的MVP,运营一个微信公众号-dotNET跨平台,主要就是本土化将微软开源项目的介绍、进展、分析和案例要及时告知中国开发者。建议微软官方培养成功案例,榜样的力量是无穷的,开源之后的赢家在哪里?甜头在哪里?树立这样的榜样,开发社区都会看到。

可以执行:

RyuJIT

RyuJIT 是微软发展的新式即地编译器 (Just-in-Time Compiler),用以替换现有的 .NET Framework 的 JIT 以及 JIT64 即地编译器,依据微软公布的测试报告,RyuJIT 的性能较前一代的 JIT 提升约 25%,并支持SIMD(Single Instruction, Multiple Data) 的技术。RyuJIT 同时应用于 .NET Framework 4.6 以及 .NET Core[4]  。

开源的好处是,吸收整个技术社区的力量促进开源项目的发展和竞争力,提高开发者的参与感和信任度,有利于吸引开发者,构建良好的生态系统。.NET开源,开发者不必担心这个项目会半途而废,可以更关注项目本身的发展和特性,背后有.NET基金会,微软和Xamarin公司,他们都有明确的开发路线图,强大的技术团队支持。

brew -v

Core CLR

Core CLR 移植 .NET Framework 的 CLR 的功能,包含核心程序库 mscorlib、JIT 编译器、垃圾收集器 (GC) 以及其他运行 MSIL 所需要的运行期环境。

在云计算、大数据、移动互联网和物联网的时代,开发者需要看到微软在承诺开源之后的迅速行动,开源社区和生态快速搭建起来,跨平台官方支持版本快速发布出来,抓住移动互联网的契机,把整个.NET新局面打开。

图片 4

Core RT

Core RT 是以AOT (Ahead-of-time) 编译方式为主的核心功能,在 .NET Core 内称为 Core RT,在 UWP 则是称为 .NET Native。

Core RT 会在建造时期 (非运行期) 在编译时将 MSIL 转换成平台本地的机器码,以获取较短的引导时间 (JIT 采用的是运行时期编译,使得引导时间拉长),以及内存用量减少的优点。Core RT 会在不同的平台使用不同的 AOT 技术:

  • Windows 上使用的是 .NET Native。

  • Mac OS 与 Linux 上使用的是 LLILC (同时支持 JIT 和 AOT)。

Install the .NET Version Manager (DNVM)
Once Homebrew is installed, install the DNVM by running brew tap aspnet/dnx from a Terminal window. If you need to update your version of DNVM, first run brew untap aspnet/dnx to delete the old commands, and then run the brew tap aspnet/dnx command again to get the updated scripts.
图片 5

LLILC

LLILC (LLVM-based MSILCompiler,英文发音为 "lilac") 是 .NET Core 在非 Windows 平台的 MSIL 编译器[5]  ,基于 ECMA-335 (Common Language Infrastructure) 的标准将 MSIL 编译成原生码运行,适用于可运行 LLVM 的操作系统,例如 Mac OSX 与 Linux 操作系统。

LLILC 同时支持 JIT (内含 RyuJIT 的实现) 以及 AOT (未来将开始支持) 的编译方式。

If you had an older version of our Homebrew "tap" configured, you might get the following error: Could not create link for aspnet/dnx/kvm, as it conflicts with aspnet/k/kvm. In that case, simply run brew uninstall kvm to ensure any old versions of kvm are removed, then brew untap aspnet/k to remove the old tap. After that, the brew tap aspnet/dnx command should succeed.

Roslyn

.NET Compiler Platform (项目代码为 Roslyn) 是将 .NET 平台的编译架构标准化的平台,它可提供程序管理工具 (如集成开发环境) 相当多的情报,用以发展有助于编写程序与管理程序结构所需要的功能,例如类型信息、语法结构、参考链接、语义、编译器、自动化、错误回报等等功能,只要是遵循 CLI 标准的编程语言,都可以利用 .NET Compiler Platform 实现出编译器,让程序管理工具能实现如语法提示、语法自动完成、关键字高亮等可视化能力。

.NET Compiler Platform 可同时支持 .NET Framework 4.6 以上版本,.NET Core 也原生支持。

 

 

摘抄自百度百科。

 

 

 

 

  

Next, run the command brew install dnvm to install the .NET Version Manager. This will also automatically install the latest DNX package from the  feed.

mono 

Xamarin公司开发的跨平台。NET运行环境

Mono是一个由Xamarin公司(先前是Novell,最早为Ximian)所主持的自由开放源代码项目。[1]  该项目的目标是创建一系列匹配ECMA标准(Ecma-334和Ecma-335)的.NET工具,包括C#编译器和通用语言架构。

  与微软的.NET Framework(共通语言运行平台)不同,Mono项目不仅可以运行于Windows系统上,还可以运行于Linux,FreeBSD,Unix,OS X和Solaris,甚至一些游戏平台,例如:Playstation 3,Wii或XBox 360。[2] 

     Mono是一个由Novell公司(由Xamarin发起),并由Miguel de lcaza

图片 6

领导的,一个致力于开创.NET在Linux上使用的开源工程。它包含了一个C#语言的编译器,一个CLR的运行时,和一组类库,并实现了 ADO NET和ASP NET。能够使得开发人员在Linux用C#开发程序。)主持的项目.该项目的目标是创建一系列符合标准ECMA (Ecma-334和Ecma-335)的.Net 工具, 包括C #编译器和共同语言(CL 即 Common Language)执行平台(Platform).与微软的.Net不同, Mono项目不仅可以运行于Windows系统内,还可以运行于Linux, FreeBSD, Unix, Mac OS X和Solaris。[3] 

Mono现由Novell持有双重许可, 这和Qt、Mozilla应用程序套件的情况相似.Mono的C #编译器及其相关工具发布于GNU General Public License (GPL)之下,其运行时库发布于GNU Lesser General Public License (LGPL)之下,其类库发布于MIT License之下.这些均是开源协议因此Mono是一个开源软件.如果你打算向Mono贡献你的源码,则你须签署一个版权分派给Novell以允许它将这些代码在其它协议下再申请许可,从而允许Novell保留其双重许可的能力来持有Mono的商业协议[1].

微软开发了一个称为共享源码公共语言基础(Shared Source Common Language Infrastructure, Shared Source CLI)的可用于FreeBSD, Windows, Mac OS X的.NET实现版本.微软的共享源码协议并不是开源软件协议,且可能对于社区来说也是不足够的(它明文禁止了对软件的商业用途).我们还可以见到另外一个.NET实现版本, Portable NET项目,该项目与Mono项目有着很多相同的目标.

Mono虚拟机包含一个实时编译引擎,该引擎可用于如下处理器: x86, SPARC, PowerPC, ARM, S390 (32位模式和64位模式), x86-x64, IA64和64位模式的SPARC.该虚拟机可以将代码实时编译或者预先编译到原生代码.对于那些没有列出来的系统,则使用的是代码解释器.

 

  Miguel de Icaza在. NET的文档于2000年10月发布时就对. NET产生了兴趣.在查看字节码解释器后,他发现对于元数据(metadata)没有相应的说明文档.2001年2月, deIcaza在. NET邮件列表中索要到了那段缺失了的关于元数据文件格式的信息,并开始了采用编写一个C #编译器的工作,作为对的实践C #. 2001年4月ECMA公布了那段缺失的文件格式,而在GUADEC (2001年4月6日- 8月4日) deIcaza展示了他的编译器的一些特性(那个时候他的编译可以解释自身).

Ximian内部对如何创建能有效提升生产效率的工具进行了大量的讨论,他们的目标是通过这些创建出来的工具让使用者可以在更短时间内创建出更多的应用程序从而缩短开发周期和降低开发成本.经过可行性研究后,他们清楚地见到创建这样的一项技术是可行的,于是Ximian从其它的项目抽调人员并创建了的开发小组Mono.由于缺少人力来创建整个. NET替代产品,他们在2001年7月19日的O'Reilly大会创建了的开源项目Mono.

差不多三年后, Mono于2004年7月30日发布了1.0版本.

      类库为应用程序开发提供一套广泛而有效的工具类。这些工具类本是采用C#编写的,但是由于.NET采用的公共语言运行时,它们可以用于任何.NET语言。类库被按命名空间进行了结构化,并被放置于称为程序集的共享库中。在我们谈到.NET framework时,我们多数是指这个类库。

  公共语言基础(Common Language Infrastructure,CLI),又叫公共语言运行时(Common Language Runtime),已由Mono实现。该运行时用于执行已编译的.NET应用程序。公共语言基础已被ECMA定义为标准ECMA-335。要运行一个.NET应用程序,你必须使用相应的参数调用运行时。

在ECMA-335的第六章详细说明了公共语言规范(Common Language Specification,CLS)并定义了提供给公共语言基础的接口,例如对于枚举类型的隐含表示类型的协定。 Mono的编译器负责生成符合公共语言规范的映射代码,即公共中间语言(Common Intermediate Language,CIL)。 Mono的运行时将运行这类代码。 ECMA标准先前还定义了一个符合公共语言规范的程序库作为应用框架。

  在原生的.NET/Mono应用程序中,所有代码都是托管的,也就是说,是受管于CLI式的内存管理和线程安全管理的。其它的.NET或Mono应用程序可以通过使用System.InterOpServices库创建C#绑定来调用已存的非托管代码。很多移植到Mono的类库使用了CLI的这个特性,例如Gtk#。

  现有大量与Mono相关的用于扩展Mono的项目,这些项目允许开发者在他们的开发环境中使用Mono。这些项目包括:

Cocoa#,对原生Mac OS X工具包的一系列包装(Cocoa)。

Gecko#,一个对在Mozilla中使用的嵌入式布局引擎的绑定(Gecko).

Gtk#,对使用C的GTK+库的C#的外包。

Tao,一个图形及游戏库的绑定。

 

摘抄自百度百科

 

.NET Fremework

 

  Microsoft .NET Framework是用于Windows的新托管代码编程模型。它将强大的功能与新技术结合起来,用于构建具有视觉上引人注目的用户体验的应用程序,实现跨技术边界的无缝通信,并且能支持各种业务流程。

 

 

再次开始谈.NET Core 

.NET Core是一个开源通用的开发框架,支持跨平台,即支持在Window,macOS,Linux等系统上的开发和部署,并且可以在硬件设备,云服务,和嵌入式/物联网方案中进行使用。.NET Core的源码放在GitHub上,由微软官方和社区共同支持。

它和传统的.NET Framework,属于“子集—超集”的关系,或者你也可以简单地认为它就是.NET Framework的跨平台版本(基于BCL的层面上看)。这是因为在当前版本中(1.0),.NET Core中的大部分核心代码都是从.NET Framework中继承重写的,包括Runtime和Libraries(如GC, JIT, 部分类型)。

 

 

这一步可能出现没有权限的问题:
图片 7

2.2 .NET Core的组成

 

  • .NET Runtime
    即CoreCLR。如之前所说,CoreCLR与.NET Framework的CLR并没有什么区别,进程管理,GC,JIT(RyuJIT 编译器)这些部分也都是一样的,只是针对服务器系统做了相应优化。现在CLR和CoreCLR也在进行同步更新,只是可以肯定的是,CoreCLR才是.NET的未来,CLR将作为兼容手段而存在

  • Framework Libraries,
    即CoreFX。包括集合类,文件系统处理类,XML处理类,异步Task类等

  • SDK Tools 和 Language Compilers (SDK工具和编译器)
    即CLI工具和Roslyn编译器。可以通过.NET Core SDK(.NET Core开发工具包)获取。

  • dotnet’app host
    用来选取并执行对应运行时,提供组件载入原则和启动.NET Core应用程序。SDK也是通过相同程序启动。

    Tips:是不是想起了MSCorEE.dll这个垫片,它同样承载着Windows平台上为.NET应用程序选择CLR版本的工作

 摘抄自:.NET Core全面扫盲贴

 

 

 

 

 

 

执行

chown root:wheel /usr/local/bin/brew

然后执行

brew link mono

图片 8
完成安装。 一切正常了。

Next, run dnvm to verify that your terminal understands this command. If it does not, run the command source dnvm.sh to link it, then try running dnvm again. You should see something like this:

图片 9

 

使用Yemoman 创建Asp.net 项目

Mac 上 Asp.net 环境搭建好了以后,自己手动去开始一个 Asp.net 项目,是比较繁琐的。 Yeoman 上已经有 Asp.net 的 generator.

如果没有 Yeoman 先安装 Yeoman, Yeoman 的介绍:  Yeoman下面有各种项目基础框架的generator

> npm install -g yo

安装 Asp.net generator

> npm install -g generator-aspnet

使用 yeoman 开启一个 Asp.Net 项目

> yo aspnet

这里使用 Nancy 框架, Nancy的介绍:  一个轻量级的 .Net Web Framework

选择 Nancy ASP.Net Application
图片 10

同时给一个项目名字,这里用了 NacyApp
图片 11

项目基础文件框架就生产了。

进入 NacyApp 目录

执行

dnu restore 

加载 依赖
图片 12

如果 dnu 命令执行失败, commond not found.

执行命令:

source dnvm.sh

如果执行 dnu restore 出现  取依赖包找不到的问题,切换一下源再试试,有两个可用的源:

1. 
2.  

例如:

dnu restore -s "https://www.myget.org/F/aspnetmaster/api/v2"

可以使用 core visual studio 打开工程,开始写程序。
图片 13

然后 dnx . kestrel 开始你的 NacyApp 就可以了
图片 14

图片 15

这里有个有意思的事情,在terminal 里执行了 dnx . kestrel 后,如果想退出, 执行 ctrl+c 了以后,看到 terminal 没有反应,在浏览器里刷新一下页面, terminal 会出一个错误, 就退出了。
图片 16

 

原博客地址:

                  

本文由葡京网投哪个正规发布于首页,转载请注明出处:系统上运行,消除误解

关键词:

上一篇:ThreadLocal深度解析

下一篇:常用系统性能监控命令