我确信这很容易,但我画的是空白。我有5个文本框用于搜索。如果填充了TextBox1,则填充GridView1,GridView2的TextBox2等。然后,如果只填充TextBox1或TextBox2,我还有4个GridView可以填充,但如果两者都填充则填充。另一个GridView将根据填充的1个或3个TextBox来填充。
是否存在除Switch或500以外的其他方式如何编写基于填写的1到3个搜索字段填充GridView的代码?
答案 0 :(得分:0)
在这种情况下,我通常会定义一个带有多个输入参数的特定搜索查询,它会检查每个参数是否有值。
例如
-- This part only if you use ODBC connection, it you use SQL Client connection you don't need it
declare @CompanyID int
declare @CustomerNumber int
declare @LocationID int
declare @AnotherFilter varchar(100)
SELECT @CompanyID=?, @CustomerNumber=?, @LocationID=?, @AnotherFilter=?
-- End ODBC specific
SELECT *
FROM Your_table
WHERE
(COMPANY_ID=@CompanyID OR @CompanyID=0)
AND
(CUSTOMER_NUMBER=@CustomerNumber OR @CustomerNumber=0)
AND
(LOCATION_ID=@LocationID OR @LocationID=0)
AND
(ANOTHER_FIELD=@AnotherFilter OR @AnotherFilter='')
您可以将它放在GridView(s)
的SQLDataSource或ObjectDataSource中答案 1 :(得分:0)
与LINQ一起使用。从基本数据集开始,然后根据下一个TextBox是否为空将其过滤。