C# Where
判断一个字符串中是否包含字符串数组里的字符,恶意字符限制提交,一般人,包括最初的我,会这样写
public bool ValidateStr(string[] parms)
{ bool result = false; //要验证的字符列表 string[] validateParms = { "'", "\"", "%" };
for (int i = ; i < parms.Length; i++)
{
for (int j = ; j < validateParms.Length; j++)
{
if (parms[i].IndexOf(validateParms[j]) != -)
{
result = true;
}
}
}
return result;
}
但是你绝不觉得,看着代码很乱呢
其实我们可以这样写
public bool ValidateStr(string[] parms)
{
bool result = false;
//要验证的字符列表
string[] validateParms = { "'", "\"", "%" };
for (int i = ; i < parms.Length; i++)
{
if (validateParms.Where(p => p.IndexOf(parms[i]) > ).Count() > )
{
result = true; }
}
return result;
}
代码瞬间清晰
随机推荐
- ASP.NET Identity登录原理 - Claims-based认证和OWIN
MVC5 - ASP.NET Identity登录原理 - Claims-based认证和OWIN 在Membership系列的最后一篇引入了ASP.NET Identity,看到大家对它还是挺感兴趣 ...
- C# STA和MTA线程设置
参考资料: http://www.yesky.com/20010207/158097.shtml http://www.ftponline.com/china/XmlFile.aspx?ID=242 ...
- [转]Inspecting Obj-C parameters in gdb
Since the addition of i386 and x86_64 to the Mac OS’s repertoire several years back, remembering whi ...
- C++之Effective STL
今天看了下websocket的知识,了解到这是html5新增的特性,主要用于实时web的通信.之前客户端获取服务端的数据,是通过客户端发出请求,服务端进行响应的模式,或者通过ajax每隔一段时间从后台 ...
- Asp.Net请求响应过程
Asp.Net请求响应过程 在之前,我们写了自己的Asp.Net框架,对整个流程有了一个大概的认识.这次我们来看一下Asp.Net整个请求处理过程是怎么样的. 浏览器封装请求报文,发送请求到达服务器, ...
- js chart
如何在我们项目中利用开源的图表(js chart) 最近觉得应该把自己在技术上的一些心得记录在博客里面跟大家分享,一起讨论,一起成长! 这篇随笔主要为介绍chart在项目中的运用,因为在我们看到一 ...
- GitHub上搭建个人网站
大致如下步骤: 1.注册Git账号 2.创建SSH keys 3.新建repository --- 4.设置网站 5.clone库到本地 6.提交.上传 7.预览 本教程默认你了解GitHub的基础之 ...
- Google photos -- reverse thinking
As a hacker, do the hacking. Here I mean the [hacker](http://en.wikipedia.org/wiki/Hacker_(term) ) . ...
- Arduino 各种模块篇 摇杆模块
Arduino的另外几种模块,我们常见的joystick摇杆模块. 用起来很爽,摇杆 有X,Y轴可调 这里有一篇非常想尽的示例代码: http://www.geek-workshop.com/foru ...
- 适配器模式及C++实现
适配器模式及C++实现 适配器模式 适配器模式是很好理解的模式了,生活中也非常常见,什么插头2口转3口,什么USB转PS2,这都算是适配器模式.说白了,就是如果有一些东西提供的接口你很像用,但是你手头 ...