前言:对于经常忙于服务端开发的小伙伴来说,与DB层打交道是在正常不过的事了,但是每次页面的查询条件新增往往意味着后端代码参数化同比增长,当然你可以不使用sqlhelper自带的参数化条件查询,可以直接传递参数,这样一来,可能你写的代码就变少了,但是存在一个隐藏的问题就是sql注入,对于sql注入我想大家都并不陌生,相关资源和预防措施网上千篇一律,有兴趣可以自己去了解,常用的注入工具是sqlmapper,有兴趣的可以一并去了解。

那么你写代码既要保持代码的优雅,语句条数的少量,有想要保证代码的安全性能,不被轻易注入,有没有一种2种都能兼容的方式呢,在对于一般习惯拘泥于原有代码思维的人来看,可能并没有,但是习惯于从不同角度思考问题的人来说,条条大路通罗马,比如我下面说的这种就是基于.NET 自带的stirngfromatter原理来实现的一种自动化参数化查询~~

由于口头表述不是很好,我直接贴图来说明了,请看

这是原先的参数化查询

大学生就业培训,高中生培训,在职人员转行培训,企业团训 View Code

 

步骤一 先实例化一个sqlparams实体

步骤二 将满足条件的参数传入定义好的参数实体并赋值(可能需要条件验证)

步骤三 将填充完成后的参数对象传入调用的sqlhelper查询接口中

网友评论