如何在powershell DSC中正确写入参数

时间:2014-11-05 16:27:32

标签: powershell dsc

我创建自定义DSC模块。我在DSC资源中只有两个值,其中一个是二维数组:

node ("localhost")
   {
        ChangeXML ChangeValue
        {
            NameFile=$PathToXml #Enter path to input xml
            DownloadManagerCustomData = 
            @(
                @{
                        Node = 'some path';
                        Value = 'some value' 
                }#end of hash array

                @{
                        Node = 'some path';
                        Value = 'some value' 
                }#end of hash array 

            )#end of two dimensional array

        }
   }

我创建了ChangeXML.schema.mof,它描述了变量。所以,我不知道如何写阵。你能救我吗?

[ClassVersion("1.0"), FriendlyName("ChangeXML")]
class ChangeXML : OMI_BaseResource
{
  [Key] String NameFile;
  [Write] *Array?* DownloadManagerCustomData;
};

1 个答案:

答案 0 :(得分:1)

[ClassVersion("1.0"), FriendlyName("ChangeXML")]
class ChangeXML : OMI_BaseResource
{
  [Key] String NameFile;
  [Write] EmbeddedInstance("MSFT_KeyValuePair")] String DownloadManagerCustomData[];
};

您还可以使用PowerShell.org's DSC repo中的New-MofFile功能。它为你生成MOF并且工作得非常好(完全披露,我不是附属的,但我贡献了一小部分代码)。

修改

修正了上面的代码,并且意识到New-MofFile不会(当前)处理它,但是可以这样做,我可以在有机会的时候为此目的修补它。

此外,我为您展示的内容(一个哈希表数组)提供了MOF语法,而不是您所说的(数组数组)。