Database.ExecuteSqlCommandAsync Method (TransactionalBehavior, String, Object[])

[This page is specific to the Entity Framework version 6. The latest version is available as the 'Entity Framework' NuGet package. For more information about Entity Framework, see msdn.com/data/ef.]

Asynchronously executes the given DDL/DML command against the database. As with any API that accepts SQL it is important to parameterize any user input to protect against a SQL injection attack. You can include parameter place holders in the SQL query string and then supply parameter values as additional arguments. Any parameter values you supply will automatically be converted to a DbParameter. context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Alternatively, you can also construct a DbParameter and supply it to SqlQuery. This allows you to use named parameters in the SQL query string. context.Database.ExecuteSqlCommandAsync("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

Namespace:  System.Data.Entity
Assembly:  EntityFramework (in EntityFramework.dll)

Syntax

'Declaration
Public Function ExecuteSqlCommandAsync ( _
    transactionalBehavior As TransactionalBehavior, _
    sql As String, _
    ParamArray parameters As Object() _
) As Task(Of Integer)
'Usage
Dim instance As Database 
Dim transactionalBehavior As TransactionalBehavior 
Dim sql As String 
Dim parameters As Object()
Dim returnValue As Task(Of Integer)

returnValue = instance.ExecuteSqlCommandAsync(transactionalBehavior, _
    sql, parameters)
public Task<int> ExecuteSqlCommandAsync(
    TransactionalBehavior transactionalBehavior,
    string sql,
    params Object[] parameters
)
public:
Task<int>^ ExecuteSqlCommandAsync(
    TransactionalBehavior transactionalBehavior, 
    String^ sql, 
    ... array<Object^>^ parameters
)
member ExecuteSqlCommandAsync : 
        transactionalBehavior:TransactionalBehavior * 
        sql:string * 
        parameters:Object[] -> Task<int> 
public function ExecuteSqlCommandAsync(
    transactionalBehavior : TransactionalBehavior, 
    sql : String, 
    ... parameters : Object[]
) : Task<int>

Parameters

  • parameters
    Type: System.Object[]
    The parameters to apply to the command string.

Return Value

Type: System.Threading.Tasks.Task<Int32>
A task that represents the asynchronous operation. The task result contains the result returned by the database after executing the command.

Remarks

Multiple active operations on the same context instance are not supported. Use 'await' to ensure that any asynchronous operations have completed before calling another method on this context.

See Also

Reference

Database Class

ExecuteSqlCommandAsync Overload

System.Data.Entity Namespace