ObjectContext.ExecuteStoreCommand 方法 (TransactionalBehavior, String, Object[])
[本页针对的是实体框架版本 6。最新版本以“实体框架”NuGet 包的形式提供。有关实体框架的更多信息,请参见 msdn.com/data/ef。]
使用现有连接对数据源直接执行任意命令。 使用服务器的本机查询语言(如 SQL)指定该命令。 与接受 SQL 的任何 API 一样,对任何用户输入进行参数化以便避免 SQL 注入攻击是十分重要的。 您可以在 SQL 查询字符串中包含参数占位符,然后将参数值作为附加参数提供。 您提供的任何参数值都将自动转换为 DbParameter。 context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); 或者,您还可以构建一个 DbParameter 并且将其提供给 SqlQuery。 这允许您在 SQL 查询字符串中使用命名参数。 context.ExecuteStoreCommand("UPDATE dbo.Posts SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
命名空间: System.Data.Entity.Core.Objects
程序集: EntityFramework(在 EntityFramework.dll 中)
语法
声明
Public Overridable Function ExecuteStoreCommand ( _
transactionalBehavior As TransactionalBehavior, _
commandText As String, _
ParamArray parameters As Object() _
) As Integer
用法
Dim instance As ObjectContext
Dim transactionalBehavior As TransactionalBehavior
Dim commandText As String
Dim parameters As Object()
Dim returnValue As Integer
returnValue = instance.ExecuteStoreCommand(transactionalBehavior, _
commandText, parameters)
public virtual int ExecuteStoreCommand(
TransactionalBehavior transactionalBehavior,
string commandText,
params Object[] parameters
)
public:
virtual int ExecuteStoreCommand(
TransactionalBehavior transactionalBehavior,
String^ commandText,
... array<Object^>^ parameters
)
abstract ExecuteStoreCommand :
transactionalBehavior:TransactionalBehavior *
commandText:string *
parameters:Object[] -> int
override ExecuteStoreCommand :
transactionalBehavior:TransactionalBehavior *
commandText:string *
parameters:Object[] -> int
public function ExecuteStoreCommand(
transactionalBehavior : TransactionalBehavior,
commandText : String,
... parameters : Object[]
) : int
参数
- transactionalBehavior
类型:System.Data.Entity.TransactionalBehavior
对于此命令控制事务的创建。
- commandText
类型:System.String
使用服务器的本机查询语言指定的命令。
- parameters
类型:System.Object[]
要用于查询的参数值。
返回值
类型:System.Int32
受影响的行数。