当前位置:编程学习 > C#/ASP.NET >>

关于模糊搜索(不限时的问题)

本人在用做一个模糊搜索中, 如:学历选择了不限时,也就是数据库学历字段中就包括了所有的字段,我在存储过程中这样写的....(eb like '%' +@eb+ '%')
但问题出来了,如果用户选择了高中时可正常搜索出数据(job_name=文员&eb=高中),但如果用户选择了不限也时(http://localhost:10871/yyhure_online_test/test_erro/so_jie.aspx?job_name=文员&eb=)却搜不到任何数据请问这是为什么呢
数据库里面的数据基本是这样的  --------------------编程问答-------------------- 你对应的学历字段中又没有“不限”这个值,当然查不出值了 --------------------编程问答-------------------- 没有阿 我把 “不限”两字过滤了
                     <option value="">不限</option>
                  <option value="初中">初中</option>
                  <option value="高中">高中</option>
                  <option value="中专">中专</option>
                  <option value="大专">大专</option>
value是空的传值是这样传的 http://localhost:10871/yyhure_online_test/test_erro/so_jie.aspx?job_name=文员&eb=&sex=) --------------------编程问答-------------------- 你获取到后,EB的值是null,即没有值,用这样给EB赋值即可:
string eb=String.IsNullOrEmpty(Request.QueryString["eb"])?"":Request.QueryString["eb"]; --------------------编程问答-------------------- 谢谢
你获取到后,EB的值是null,即没有值,用这样给EB赋值即可: 
string   eb=String.IsNullOrEmpty(Request.QueryString[ "eb "])? " ":Request.QueryString[ "eb "]; 
但这种方法也试过了 还是不行  --------------------编程问答-------------------- 看看你的存储过程在执行的时候到底是什么样子

 莫非被弄成了 (eb like '%null%')?
--------------------编程问答-------------------- 直接去掉 --------------------编程问答-------------------- 各位这个问题 解决了 原来存储过程没有问题 而是我的读取数据控件SqlDataSource 的ConvertEmptyStringToNull 没有设置成false 默认是true的 没有处理的空的数据 谢谢各位了
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,