问题描述
我知道在here和here之前已经问过这个问题。但是出于一个或另一个原因,它实际上对我们不起作用。
所需结果
2个可与pester参数ParameterFilter
一起使用的脚本块,仅扩展了变量$testTable
:
{
($Query -like "*SELECT * FROM tableOne*
WHERE TicketNr IS NOT NULL AND TicketCloseDate IS NULL*")
}
{
($Query -like "*SELECT * FROM tableWto*
WHERE TicketNr IS NOT NULL AND TicketCloseDate IS NULL*")
}
下面的代码不起作用,因为我们需要转义$testQuery
中的所有内容。是否没有办法只扩展$testTable
而不扩展其他部分?
foreach ($testTable in @('tableOne','tableTwo')) {
$testQuery = "*SELECT * FROM $testTable*
WHERE TicketNr IS NOT NULL AND TicketCloseDate IS NULL*"
[ScriptBlock]::create("`$Query `-like $testQuery")
}
解决方法
我想我明白了:
foreach ($testTable in @('tableOne','tableTwo')) {
[ScriptBlock]::create(@"
(`$Query -like "*SELECT * FROM $testTable*
WHERE TicketNr IS NOT NULL AND TicketCloseDate IS NULL*" )
"@)
}