EF作为一个orm框架,本身以及放置了sql的注入,但是如果我们需要执行sql语句的时候了?比如,我们需要查询视图"select * from VM where 条件 = {0}",此时,sql是可以注入的
那么,我们该如何防止注入呢?在论坛找到一个方法,收藏下,哈哈
function bool SS(string no)
{
try{
string sql = "select count(*) from Students where StudentNo=@No";
var args = new DbParameter[] {
new SqlParameter { ParameterName = "NO", Value = no},
};
return DataContext.SqlQuery<int>(sql, args).FirstOrDefault() > 0;
}
catch(Exception ex)
{。。。。}
}