PowerShell を使用して SQL コマンドを非同期で実行しようとしています。これを達成するために、SqlCommand
クラスとBeginExecuteNonQuery
メソッドを使用しています。私の知る限り、このメソッドはIAsyncResult
クラスを返す必要があります。しかし、戻り値を検査しようとすると、System.Data.Common.DbAsyncResult
クラスが表示されます。
私が間違っていること、または私の間違いについてどこで読むことができるか教えてください。私はプログラミングにまったく慣れていません。私のコードサンプルは以下です
$connection = New-Object System.Data.SqlClient.SqlConnection
"addr=tcp:192.168.0.81,1433;Database=ArchiCredit;uid=sa;password=1;Async=true;"
$connection.Open()
$connection.State
$command = New-Object System.Data.SqlClient.SqlCommand ("update clients set fullname = 'ololo' where id = 15", $connection)
$state = $command.BeginExecuteNonQuery()
$state | gm
このスクリプトの結果は
PS C:\Users\ivanov> F:\AsyncSQL.ps1
Open
TypeName: System.Data.Common.DbAsyncResult
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()