Import-DscResource 关键字支持 -ModuleVersion 参数Import-DscResource keyword supports -ModuleVersion parameter

我们向创作 DSC 配置时可用的 Import-DscResource 动态关键字添加了一个新参数。We have added a new parameter to the Import-DscResource dynamic keyword available when authoring DSC configurations. 现在,配置作者可以明确指定从中加载 DSC 资源的模块版本。Configuration authors can now specify exactly which module version to load the DSC resources from. 该关键字的新语法为:The new syntax of the keyword is:

Import-DscResource [-Name <ResourceName(s)>] [-ModuleName <ModuleName(s)>] [-ModuleVersion <ModuleVersion>]
  • Name:要导入的一个或多个资源的名称。Name: Names of one or more resources to import.
  • ModuleName:要导入的一个或多个模块的模块名称或 ModuleSpecification 对象。ModuleName: Module names or ModuleSpecification objects of one or more modules to import.
  • ModuleVersion:要导入的模块的版本。ModuleVersion: Version of module ot import. 如果使用 ModuleName,则它只能表示一个模块的名称。If used, ModuleName must represent only one module by name.

在 Windows PowerShell ISE 中,它与 IntelliSense 一起出现:In the Windows PowerShell ISE, it shows up with IntelliSense:

注意–ModuleVersion 参数只能与 –ModuleName 参数结合使用。Note: the –ModuleVersion parameter can only be used in combination with the –ModuleName parameter. 它不能与仅使用 –Name 参数的资源名称一起使用。It cannot be used with resource names using only the –Name parameter.

在此之前,加载 DSC 资源时指定模块版本的唯一方法是通过使用模块规范对象,例如:–ModuleName @{ModuleName="UserConfigProvider";ModuleVersion="3.0"}Before this, the only way to specify the module version when loading DSC resources was by using the Module specification object e.g.: –ModuleName @{ModuleName="UserConfigProvider";ModuleVersion="3.0"}