如何在 C# 中向 PSObject 添加成员

本文关键字:PSObject 添加 成员 中向 | 更新日期: 2023-09-27 18:30:20

我正在使用Microsoft Moles来模拟方法。

此方法调用另一个调用 PowerShell 脚本并返回

的方法

收集<PSObject>

所以我想模拟它以返回自定义 PSObject。它将有两个属性:"ID"和"名称"。

但是当我尝试使用

PSObject obj = new PSObject();
obj.Members.Add(new PSMemberInfo(

我发现构造函数受到保护。

如何添加属性?

谢谢。

如何在 C# 中向 PSObject 添加成员

PSMemberInfo是一个抽象类,所以你不能直接创建一个实例,而选择它的子类

在页面:http://msdn.microsoft.com/en-US/library/system.management.automation.pspropertyinfo(v=vs.85).aspx您可以在下面找到:

System.Object 
   System.Management.Automation.PSMemberInfo
    System.Management.Automation.PSPropertyInfo
       System.Management.Automation.PSAliasProperty
       System.Management.Automation.PSCodeProperty
       System.Management.Automation.PSNoteProperty
       System.Management.Automation.PSProperty
       System.Management.Automation.PSScriptProperty

选择您的类,然后初始化它。

您可以使用不同的成员类型来代替 PSNoteProperty

PSObject individualPsObject = new PSObject();
individualPsObject.Members.Add(new PSNoteProperty("Name", "Value"));