c# - .NET Core 控制台应用程序无法识别 Linux 上的输入参数
问题描述
我有一个简单的 .NET Core 控制台应用程序,可以打印输入参数计数:
namespace ConsoleApp
{
class Program
{
static void Main(string[] args)
{
Console.WritLine($"You passed {args.Length} parameters");
}
}
}
在 Windows 上,它按预期工作。
我使用命令将其构建为自包含应用程序:
dotnet publish -r linux-x64 --self-contained true
当我在 Ubuntu 上执行它时,无论我在程序名称后输入什么,它总是返回You passed 0 parameters
,因为没有输入。
解决方案
最后,对我来说,有效的方法很简单:
dotnet myapp.dll myparam
这适用于 Windows 和 Docker(Debian buster)。.NET 核心 3.1。
推荐阅读
- eclipse - Eclipse 2019-03 对 Tomcat 9 的支持
- git - 使用 Weaveworks Flux 从 Kubernetes 中删除资源
- ios - 允许我的 iOS 应用程序进入的国家/地区?
- c# - 将一行与列表进行比较
- aws-glue - 我的 S3 存储桶中有两个不同的数据文件。如何将它们都加载到正确的表中?
- android - 任务“:processDebugResources”执行失败(Buildozer Kivy)
- c# - 构建完成后警告转换为错误
- c# - 在 Python 中使用 C# DLL
- c - 当我使用 pthread 时新窗口不打开
- python - 我有具有二进制特征的机器学习数据。如何强制自动编码器返回二进制数据?