2

我创建了自定义 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;
};
4

1 回答 1

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

您还可以在PowerShell.org 的 DSC repoNew-MofFile中使用该函数。它为您生成 MOF 并且运行良好(完全披露,我不隶属,但我为它贡献了一点代码)。

编辑

修复了上面的代码,只是意识到New-MofFile(目前)不会处理这个问题,但可以这样做,当我有机会时,我可能会为此目的对其进行修补。

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

于 2014-11-05T23:25:36.037 回答