顶层例外
我正在使用 topshelf 并且当我尝试使用“-i”选项时遇到此异常作为服务安装。
无法将“Magnum.CommandLineParser.SwitchElement”类型的对象转换为“Magnum.CommandLineParser.IArgumentElement”类型。
该函数出现异常
static void Set(TopshelfArguments args,
IEnumerable<ICommandLineElement> commandLineElements)
{
var command = commandLineElements
.Take(1)
.Select(x => (IArgumentElement) x) //EXCEPTION BREAKS ON THIS LINE
.Select(x => x.Id)
.DefaultIfEmpty("commandline")
.SingleOrDefault();
args.Command = command;
//leftovers
args.CommandArgs = commandLineElements.Skip(1).ToList();
}
I'm using topshelf and I'm getting this exception when I try to use the "-i" option to install as a service.
Unable to cast object of type 'Magnum.CommandLineParser.SwitchElement' to type 'Magnum.CommandLineParser.IArgumentElement'.
Exception occurs in this function
static void Set(TopshelfArguments args,
IEnumerable<ICommandLineElement> commandLineElements)
{
var command = commandLineElements
.Take(1)
.Select(x => (IArgumentElement) x) //EXCEPTION BREAKS ON THIS LINE
.Select(x => x.Id)
.DefaultIfEmpty("commandline")
.SingleOrDefault();
args.Command = command;
//leftovers
args.CommandArgs = commandLineElements.Skip(1).ToList();
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我们使用 TopShelf 作为服务安装的方式是
我相信这是 RC 代码支持的唯一方式。您可以通过卸载
The way we use TopShelf to install as a service is
I believe this is the only way it's supported in the RC code. You can uninstall via
看起来当传入 -i 时,解析器将其转换为 SwitchElement 类型。试试这个看看是否有效。
Looks like when passing in -i that the parser is converting it to a type of SwitchElement. Try this to see if it works.