0
내 함수에서 서버 smo 객체를 만들고 싶다. 그런 다음 scriptblock에 전달 된 것과 함께 유용한 것을 사용한다. 그 후에 서버를 확인할 수 있습니다. 템플릿 디자인 패턴 구현과 비슷한 기능을 디자인하고 싶습니다. 내 코드는 아래에 나와 있습니다. 스크립트 블록에서 $ server 변수를 사용하는 방법을 모르겠습니다. 어느 누구라도 도움이 될 수 있습니까? 감사.Powershell에서 템플릿 디자인 패턴을 사용하는 방법?
이test $anInstance {param($server) $server.DoSomething}
그런 다음 테스트 기능 그렇게 같이 스크립트 블록을 실행합니다 :
& $scripblock $server
그리고 경우를
function test{ [CmdletBinding()] param ( [Parameter(Mandatory = $true, Position = 0)] [object] $instance, [Parameter(Mandatory = $true, Position = 1)] [scriptblock] $script ) [Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO') | out-null $server = new-object ('Microsoft.SqlServer.Management.Smo.Server') $instance # do something with $script Remove-Variable -Name $server }