Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 参数化查询而不使用ExecuteCommand_C#_Sql_Asp.net - Fatal编程技术网

C# 参数化查询而不使用ExecuteCommand

C# 参数化查询而不使用ExecuteCommand,c#,sql,asp.net,C#,Sql,Asp.net,根据查询: db.ExecuteCommand( "UPDATE ForumUserStats SET Posts += {0} WHERE UserID = {1} AND ForumID = {2}", -1, post.AuthorID, post.Forum.ID ); 代码中有许多点,最好将查询保存到StringBuilder中,然后在一条ExecuteCommand语句中执行它们 如何将上述查询添加到一个字符串中,以便在以后的日期执行,而无需使用DataConte

根据查询:

db.ExecuteCommand(
    "UPDATE ForumUserStats SET Posts += {0} WHERE UserID = {1} AND ForumID = {2}",
     -1, post.AuthorID, post.Forum.ID
);
代码中有许多点,最好将查询保存到
StringBuilder
中,然后在一条
ExecuteCommand
语句中执行它们

如何将上述查询添加到一个字符串中,以便在以后的日期执行,而无需使用
DataContext


请注意,
string.format
无法正确参数化SQL的属性(例如使用
DateTime
strings
)。

通过直接使用
ExecuteCommand
,看起来您已经摆脱了从EF/Linq2Sql ORMs强制执行的约定。进行高频插入/升级的一种更有效的方法是返回到basic
ADO.Net
,建立一个长寿命命令(该命令反过来将使用已建立的连接池),然后您可以重新绑定每个事务上的值。保存查询和参数?您应该查看