如何使用.NET Core 1.0构建独立控制台应用程序?
- 内容介绍
- 文章标签
- 相关推荐
本文共计670个文字,预计阅读时间需要3分钟。
开发环境:Windows 7 x64 + .NET Core 1.0.0-preview2-003121 + Visual Studio Code 1.2.1
Self-Contained应用类型是一种独立的应用程序,它将所有必需的依赖项和运行时文件打包在一起,无需额外的安装或配置。与Portable应用类型相比,Self-Contained应用具有以下特点:
1. Self-Contained应用: - 独立运行:无需安装.NET Core运行时,应用内包含所有必需的运行时组件。 - 便携性:可以直接复制到任何支持的环境运行,无需额外的依赖。 - 更新方便:更新应用时,只需替换应用文件,无需更新运行时。
2. Portable应用类型: - 依赖运行时:需要预先安装.NET Core运行时,应用才能运行。 - 便携性较好:可以复制到U盘等移动设备,但运行时文件需要一同移动。 - 更新复杂:更新应用时,可能需要同时更新运行时和应用文件。
参考文章:.NET Core应用类型(Portable apps + Self-contained apps)
开发机器:win7-x64
.NET Core版本:1.0.0-preview2-003121
Visual Studio Code:1.2.1
至于什么是Self-Contained应用类型以及与Portable应用类型的区别,请参考另一篇文章:.NET Core应用类型(Portable apps & Self-contained apps) ,这篇文章仅仅是做一个完整的Demo供大家参考。
1、在指定目录创建一个HelloWorld的目录,使用命令行切换到此目录,执行:dotnet new 创建一个新的控制台项目。
dotnet new 命令会在HelloWorld目录下生成2个文件:1、Program.cs 2、project.json。
2、修改默认生成的project.json文件为如下:
{ "version": "1.0.0-*", "buildOptions": { "emitEntryPoint": true }, "dependencies": { "Microsoft.NETCore.App": { "version": "1.0.0" } }, "frameworks": { "netcoreapp1.0": { "imports": "dnxcore50" } }, "runtimes": { "win7-x64": {}, "osx.10.11-x64": {} } }
3、使用dotnet restore命令来复原依赖的NuGet包
4、使用dotnet publish/dotnet publish -r win7-x64命令来发布程序
在D:\HelloWorld\bin\Debug\netcoreapp1.0\win7-x64\publish目录中为发布生成的文件
5、使用dotnet HelloWorld.dll或者./HelloWorld来运行控制台程序
上述程序作为一个前台进程被执行,如果以后台进程执行,执行命令:dotnet HelloWorld.dll &或 ./HelloWorld & 即可。
把控制台的标准输出重定向到文件(>为创建或覆盖;>>为追加),执行命名: ./HelloWorld >> outfile &
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。
本文共计670个文字,预计阅读时间需要3分钟。
开发环境:Windows 7 x64 + .NET Core 1.0.0-preview2-003121 + Visual Studio Code 1.2.1
Self-Contained应用类型是一种独立的应用程序,它将所有必需的依赖项和运行时文件打包在一起,无需额外的安装或配置。与Portable应用类型相比,Self-Contained应用具有以下特点:
1. Self-Contained应用: - 独立运行:无需安装.NET Core运行时,应用内包含所有必需的运行时组件。 - 便携性:可以直接复制到任何支持的环境运行,无需额外的依赖。 - 更新方便:更新应用时,只需替换应用文件,无需更新运行时。
2. Portable应用类型: - 依赖运行时:需要预先安装.NET Core运行时,应用才能运行。 - 便携性较好:可以复制到U盘等移动设备,但运行时文件需要一同移动。 - 更新复杂:更新应用时,可能需要同时更新运行时和应用文件。
参考文章:.NET Core应用类型(Portable apps + Self-contained apps)
开发机器:win7-x64
.NET Core版本:1.0.0-preview2-003121
Visual Studio Code:1.2.1
至于什么是Self-Contained应用类型以及与Portable应用类型的区别,请参考另一篇文章:.NET Core应用类型(Portable apps & Self-contained apps) ,这篇文章仅仅是做一个完整的Demo供大家参考。
1、在指定目录创建一个HelloWorld的目录,使用命令行切换到此目录,执行:dotnet new 创建一个新的控制台项目。
dotnet new 命令会在HelloWorld目录下生成2个文件:1、Program.cs 2、project.json。
2、修改默认生成的project.json文件为如下:
{ "version": "1.0.0-*", "buildOptions": { "emitEntryPoint": true }, "dependencies": { "Microsoft.NETCore.App": { "version": "1.0.0" } }, "frameworks": { "netcoreapp1.0": { "imports": "dnxcore50" } }, "runtimes": { "win7-x64": {}, "osx.10.11-x64": {} } }
3、使用dotnet restore命令来复原依赖的NuGet包
4、使用dotnet publish/dotnet publish -r win7-x64命令来发布程序
在D:\HelloWorld\bin\Debug\netcoreapp1.0\win7-x64\publish目录中为发布生成的文件
5、使用dotnet HelloWorld.dll或者./HelloWorld来运行控制台程序
上述程序作为一个前台进程被执行,如果以后台进程执行,执行命令:dotnet HelloWorld.dll &或 ./HelloWorld & 即可。
把控制台的标准输出重定向到文件(>为创建或覆盖;>>为追加),执行命名: ./HelloWorld >> outfile &
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

