有很多参数的select查询,应该如何实现呢?
有一个表,有a_id,a_name,a_comment……等N个字段,现在想做一个查询界面,如果某控件有输入的数据,那么就根据这些数据来查询,如果某个控件留空,那么这个字段就不参加查询,里头有的是=,有的是like,有的是>……。
这样的功能,如何实现?在xsd文件里面实现,岂不是要做N个Query?
而且程序是用三层构架的方式做的,我也尝试过((a_id is null)or(a_id=?)) and ((a_name is null) or (a_name like ?))这样的子句,可是在BLL层那里就不好写了,FindByMultiParams(int a_id,string a_name,a_comment……),这样一来,比如当a_id这个控件没有输入时,传入的是一个空字符串而不是null,用if(txtA_ID.text=="")para_a_id=int.parse(null);也通不过。
怎么办啊?