ObjectContext.ExecuteStoreCommandAsync メソッド (String, CancellationToken, Object[])
[このページは、Entity Framework 6 に関するページです。最新バージョンは、'Entity Framework' NuGet パッケージとして入手できます。Entity Framework の詳細については、msdn.com/data/ef を参照してください。]
既存の接続を使用して、データ ソースに対して任意のコマンドを直接、非同期的に実行します。 コマンドは、SQL などのサーバーのネイティブなクエリ言語を使用して指定します。 SQL を受け入れる API と同様に、すべてのユーザー入力をパラメーター化して、SQL インジェクション攻撃から保護することが重要です。 パラメーターのプレースホルダーを SQL クエリ文字列に含めて、パラメーター値を追加の引数として指定することができます。 指定したパラメーター値はすべて、DbParameter に自動的に変換されます。 context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); または、DbParameter を構築して、それを SqlQuery に指定することもできます。 これにより、SQL クエリ文字列で名前付きパラメーターを使用できます。 context.ExecuteStoreCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
名前空間: System.Data.Entity.Core.Objects
アセンブリ: EntityFramework (EntityFramework.dll 内)
構文
'宣言
Public Overridable Function ExecuteStoreCommandAsync ( _
commandText As String, _
cancellationToken As CancellationToken, _
ParamArray parameters As Object() _
) As Task(Of Integer)
'使用
Dim instance As ObjectContext
Dim commandText As String
Dim cancellationToken As CancellationToken
Dim parameters As Object()
Dim returnValue As Task(Of Integer)
returnValue = instance.ExecuteStoreCommandAsync(commandText, _
cancellationToken, parameters)
public virtual Task<int> ExecuteStoreCommandAsync(
string commandText,
CancellationToken cancellationToken,
params Object[] parameters
)
public:
virtual Task<int>^ ExecuteStoreCommandAsync(
String^ commandText,
CancellationToken cancellationToken,
... array<Object^>^ parameters
)
abstract ExecuteStoreCommandAsync :
commandText:string *
cancellationToken:CancellationToken *
parameters:Object[] -> Task<int>
override ExecuteStoreCommandAsync :
commandText:string *
cancellationToken:CancellationToken *
parameters:Object[] -> Task<int>
public function ExecuteStoreCommandAsync(
commandText : String,
cancellationToken : CancellationToken,
... parameters : Object[]
) : Task<int>
パラメーター
- commandText
型 : System.String
サーバーのネイティブなクエリ言語で指定するコマンド。
- cancellationToken
型 : System.Threading.CancellationToken
タスクの完了を待機しているときに観察する CancellationToken。
- parameters
型 : System.Object[]
クエリに使用するパラメーターの値。
戻り値
型 : System.Threading.Tasks.Task<Int32>
非同期操作を表すタスク。タスクの結果には、影響を受けた行の数が示されます。
解説
同じコンテキスト インスタンスに対する複数のアクティブ操作はサポートされません。 このコンテキストで別のメソッドを呼び出す前に、非同期操作が完了したことを確認するために await を使用します。 既存のローカル トランザクションがない場合は、新しいトランザクションを使用してコマンドが実行されます。