【发布时间】:2016-06-08 11:18:20
【问题描述】:
我注意到在 EF 中使用 Contains 时
.Where(i => myListOfStrings.Contains(i.Value))
生成的SQL是这样的
IN ('Value1', 'Value2')
由于值没有参数化,是不是可以注入一些SQL?
【问题讨论】:
-
您从哪里查看生成的 SQL?探查器?我会假设 EF 在传递查询之前对值进行相关的字符串编码。
-
试试吧!传入类似
') OR 1=1-- -
@L-Four 是的,我知道,但如果包含它,它不会创建任何参数。
-
@MurrayFoxcroft 是来自分析器
标签: c# .net entity-framework tsql