【发布时间】:2012-04-23 18:28:39
【问题描述】:
我开发了一个 PowerShell 函数,该函数执行许多涉及配置 SharePoint 团队网站的操作。最终,我希望该函数将配置站点的 URL 作为字符串返回,因此在我的函数末尾我有以下代码:
$rs = $url.ToString();
return $rs;
调用这个函数的代码如下:
$returnURL = MyFunction -param 1 ...
所以我期待一个字符串,但事实并非如此。相反,它是 System.Management.Automation.PSMethod 类型的对象。为什么它返回的是那个类型而不是 String 类型?
【问题讨论】:
-
能看到函数声明吗?
-
不,不是函数调用,向我们展示您声明“MyFunction”的方式/位置。当你这样做时会发生什么:Get-Item function:\MyFunction
-
建议另一种方法来解决这个问题:stackoverflow.com/a/42842865/992301
-
我认为这是与函数/方法相关的堆栈溢出最重要的 PowerShell 问题之一。如果您计划学习 PowerShell 脚本,您应该阅读整个页面并彻底理解它。如果你不这样做,你以后会恨自己的。
-
在我看来,使用静态类函数是正确的干净解决方案,如此答案:stackoverflow.com/a/42743143/1915920
标签: powershell