API:
namespace ClassLibrary1
{
public class Class1
{
public static string Test(string input)
{
if (input == null)
return "It's null";
if (input == string.Empty)
return "It's empty";
else
return "Non-empty string of length " + input.Length;
}
}
}
脚本:
add-type -path C:\temp\ClassLibrary1\ClassLibrary1\bin\Debug\ClassLibrary1.dll
[classlibrary1.class1]::Test($null)
[classlibrary1.class1]::Test([object]$null)
[classlibrary1.class1]::Test([psobject]$null)
[classlibrary1.class1]::Test($dummyVar)
[classlibrary1.class1]::Test($profile.dummyProperty)
输出:
它是空的
它是空的
它是空的
它是空的
它是空的
我想念什么?
最佳答案
根据这个MS connect issue,这是一个已知的问题。那里也发布了一些解决方法,例如使用反射来传递参数(这很聪明,但是有点愚蠢,这是必需的)。干杯!