$Var.ToUpper() 抛出“您不能在空值表达式上调用方法”

问题描述

大家。

我不确定为什么会发生这种情况,但在我的 PowerShell 脚本中,我将字符串(最终用户输入的服务器名称)转换为大写。我的问题是,当我运行我的脚本时,它会抛出错误“您无法在空值表达式上调用方法”。在 *.toupper() 的开/关括号上。据我所知,在这种情况下使用 toupper 应该只是改变案例。

这是一个例子: $Server = $Server.toupper()

输出

You cannot call a method on a null-valued expression.
At C:\TEMP\Servers.ps1:705 char:2
+     $Server = $Server.toupper()
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidOperation: (:) [],RuntimeException
+ FullyQualifiedErrorId : InvokeMethodonNull

现在,我尝试将我调用的任何操作转换为大写,例如: $GP = Get-printer -ComputerName $Server.toupper() 以上在“()”上也失败了。

但它似乎并不是一直发生。我在很多地方进行转换,它按预期工作,但在脚本中偶尔会抛出错误

我已经尝试过 $Server = $Server.toupper()$Server = $Server.toupper -- 我得到了成功和错误的混合结果。

我敢打赌我错过了这个小东西。有关如何解决的任何建议?

谢谢, 戴尔

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)