我有两个用powerhell编写的模块,一个用powerhell编写。
powershell模块包含一个返回c#类
的cmdletnamespace SxServices
{
[Cmdlet("Get", "SxWinService")]
[OutputType(typeof(SxWinService))]
public class GetSxWinService : SxCmdLetBase
{
现在,如果我执行Get-Help Get-SxWinService -Full,它将告诉我cmd输出DataObjects.WinServices.SxWinService。这很好,下面的代码将为我提供关于这个类的所有属性的智能感知。
Get-SxWinService blah | Select-Object -Property
但是在我的第二个模块(powershell)中,我编写了另一个接受[DataObjects.WinServices.SxWinService]类型参数的cmdlet。
Function Set-SxServiceDetails{
[CmdletBinding()]
param(
[parameter()]
[DataObjects.WinServices.SxWinService]$Service
)
但是,PowerShell无法识别该类型,并使用intellisense为我提供此类型的有效属性列表。我觉得我错过了什么!有人有任何想法吗?
答案 0 :(得分:0)
很抱歉所有人都取消了这个,不知道我在做什么,但现在一切正常。
可能只需要一些缓存需要更新或模块需要删除和重新加载。无论如何,似乎以上就是你需要做的一切。