使用从 C# LinQ 到 sql数据上下文运行自定义sql
语句的最佳方法是什么?IN
我努力了:
db.ExecuteCommand(
"UPDATE tblCard SET used = 1 WHERE id IN ({0}) AND customer_id = {1}",
Request.Form["ids"], customer_id
);
这对于通过表单传递的 1 项很好,但如果我通过例如“2,1”发布,那么我会得到一个sqlclient
异常:
将 nvarchar 值“2,1”转换为数据类型 int 时转换失败。
相反,如果我使用 string.format 插入参数,它可以正常工作,但显然这对 sql 注入是开放的。