如何在power shell中使用?
这是C#中的工作示例
using (var conn = new SqlConnection(connString))
{
Console.WriteLine("InUsing");
}
Run Code Online (Sandbox Code Playgroud)
我在Powershell中需要相同(不工作):
Using-Object ($conn = New-Object System.Data.SqlClient.SqlConnection($connString)) {
Write-Warning -Message 'In Using';
}
Run Code Online (Sandbox Code Playgroud)
它不使用以下工作:
$conn = New-Object System.Data.SqlClient.SqlConnection($connString)
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助.
Ber*_*rau 25
这是一个解决方案:
function Using-Object
{
[CmdletBinding()]
param (
[Parameter(Mandatory = $true)]
[AllowEmptyString()]
[AllowEmptyCollection()]
[AllowNull()]
[Object]
$InputObject,
[Parameter(Mandatory = $true)]
[scriptblock]
$ScriptBlock
)
try
{
. $ScriptBlock
}
finally
{
if ($null -ne $InputObject -and $InputObject -is [System.IDisposable])
{
$InputObject.Dispose()
}
}
}
Run Code Online (Sandbox Code Playgroud)
我发现这个解决方案在这里,对我来说工作.
但它基本上是在finally块中实现dispose.
| 归档时间: |
|
| 查看次数: |
10230 次 |
| 最近记录: |