命令
dotnet myapp.dll -- [4, 3, 2]
引发异常System.FormatException: Input string was not in a correct format
。
我不知道语法。我应该如何正确传递参数?
我使用powershell。
答案 0 :(得分:1)
using System;
namespace ConsoleApp3
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(string.Join('-', args));
}
}
}
通过Powershell 6调用它:
dotnet .\ConsoleApp3.dll "[1,2,3]"
输出:
[1,2,3]
在上述调用中,您的Main
将作为单个字符串接收[1,2,3]
,您必须在代码中对其进行解析/拆分。
如果您希望数组反映在string[]
的{{1}}数组中,则可以使用PowerShell数组:
Main
输出:
dotnet .\ConsoleApp3.dll @(1,2,3)
此处将PowerShell数组1-2-3
强制转换为@(1,2,3)
数组。因此,PowerShell数组的每一项都注入到string[]
数组中。
PowerShell 5.1上的行为相同。
希望有帮助。