学习.Net Core

.Net Core与.Net Framework及Mono的关系?

.NET Framework

 .Net Framework基于Windows平台实现,只能在Windows和Windows Server使用.

Mono

 Mono是跨平台并开源的.Net标准实现,并且跨CPU平台(如x86,arm等),Mono支持大部分的.Net Framework API,还可以跨平台开发手机程序.

.Net Core

 .Net Core也是跨平台且开源的,目前是作为.Net Framework的子系统,不可以像Mono开发手机程序,也无法开发winform

 以上是简单翻译来源于这里

1 .Net Core

  下载:https://go.microsoft.com/fwlink/?LinkID=809122
  安装完成,可以用dotnet -v命令进行查看
  查看.net core是否安装成功  

2 使用.Net Core

  1.使用命令行进入E:\NetCoreWork中,使用mkdir创建hwapp(具体看图)
  使用dotnet new创建项目
  2.修改project.json,禁用跨平台(dotnet restore会下载其他平台依赖文件),增加runtimes节点
  修改project.json文件  
  3.使用dotnew restore命令
  
  4.使用dotnet publish -r win10-x64命令
  dotnet publihs -r win10-x64
  5.查看效果(这会生成的已经独立的,不需要安装.Net Core Sdk)
  .net core独立程序运行效果  

.Net Core发布后程序还是有大,怎么办?

  1.查看一下publish文件夹竟然有这么大?
fileinfo  
2.看来我们的好好看这么多文件,有哪些是我们不需要的,可以裁剪的.发现json文件就两个,根据文件名称,我们猜测hwapp.deps.json应该就是我们需要找的文件了.

 3.经过一番裁剪和测试,在不影响我们程序运行的情况下,publish文件夹下有116文件,变成32个文件.
 
  

终于,要运行我们的程序了

  

总结

 就目前为止,.Net Core还不是很成熟,一些第三方的组件还不完善,就打包发布对比Mono是没有优势的,用Mono通过mkbundle,简单控制台程序是很难超过10兆的,不过希望就在前方,.Net Core在商业中,有网易已经开始正式上用.
秋风 2016-07-12