.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命令进行查看
2 使用.Net Core
1.使用命令行进入E:\NetCoreWork中,使用mkdir创建hwapp(具体看图)
2.修改project.json,禁用跨平台(dotnet restore会下载其他平台依赖文件),增加runtimes节点
3.使用dotnew restore命令
4.使用dotnet publish -r win10-x64命令
5.查看效果(这会生成的已经独立的,不需要安装.Net Core Sdk)
.Net Core发布后程序还是有大,怎么办?
1.查看一下publish文件夹竟然有这么大?
2.看来我们的好好看这么多文件,有哪些是我们不需要的,可以裁剪的.发现json文件就两个,根据文件名称,我们猜测hwapp.deps.json应该就是我们需要找的文件了.
3.经过一番裁剪和测试,在不影响我们程序运行的情况下,publish文件夹下有116文件,变成32个文件.
终于,要运行我们的程序了
总结
就目前为止,.Net Core还不是很成熟,一些第三方的组件还不完善,就打包发布对比Mono是没有优势的,用Mono通过mkbundle,简单控制台程序是很难超过10兆的,不过希望就在前方,.Net Core在商业中,有网易已经开始正式上用.