次の方法で共有


ObjectContext.ExecuteStoreCommandAsync メソッド (TransactionalBehavior, 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 ( _
    transactionalBehavior As TransactionalBehavior, _
    commandText As String, _
    cancellationToken As CancellationToken, _
    ParamArray parameters As Object() _
) As Task(Of Integer)
'使用
Dim instance As ObjectContext 
Dim transactionalBehavior As TransactionalBehavior 
Dim commandText As String 
Dim cancellationToken As CancellationToken 
Dim parameters As Object()
Dim returnValue As Task(Of Integer)

returnValue = instance.ExecuteStoreCommandAsync(transactionalBehavior, _
    commandText, cancellationToken, _
    parameters)
public virtual Task<int> ExecuteStoreCommandAsync(
    TransactionalBehavior transactionalBehavior,
    string commandText,
    CancellationToken cancellationToken,
    params Object[] parameters
)
public:
virtual Task<int>^ ExecuteStoreCommandAsync(
    TransactionalBehavior transactionalBehavior, 
    String^ commandText, 
    CancellationToken cancellationToken, 
    ... array<Object^>^ parameters
)
abstract ExecuteStoreCommandAsync : 
        transactionalBehavior:TransactionalBehavior * 
        commandText:string * 
        cancellationToken:CancellationToken * 
        parameters:Object[] -> Task<int> 
override ExecuteStoreCommandAsync : 
        transactionalBehavior:TransactionalBehavior * 
        commandText:string * 
        cancellationToken:CancellationToken * 
        parameters:Object[] -> Task<int> 
public function ExecuteStoreCommandAsync(
    transactionalBehavior : TransactionalBehavior, 
    commandText : String, 
    cancellationToken : CancellationToken, 
    ... parameters : Object[]
) : Task<int>

パラメーター

  • commandText
    型 : System.String
    サーバーのネイティブなクエリ言語で指定するコマンド。
  • parameters
    型 : System.Object[]
    クエリに使用するパラメーターの値。

戻り値

型 : System.Threading.Tasks.Task<Int32>
非同期操作を表すタスク。タスクの結果には、影響を受けた行の数が示されます。

解説

同じコンテキスト インスタンスに対する複数のアクティブ操作はサポートされません。 このコンテキストで別のメソッドを呼び出す前に、非同期操作が完了したことを確認するために await を使用します。

参照

参照

ObjectContext クラス

ExecuteStoreCommandAsync オーバーロード

System.Data.Entity.Core.Objects 名前空間