Можете да направите това само в sql, както следва:
SELECT *
FROM tUsers
WHERE 1 = 1
AND (@userID IS NULL OR RTRIM(Name) = @userID )
AND (@password IS NULL OR RTRIM(Password) = @password)
AND (@field2 IS NULL OR Field2 = @field2)
....
Ако някой параметър е предаден на съхранената процедура с NULL
стойност, тогава цялото условие ще бъде игнорирано.
Обърнете внимание на това :Добавих WHERE 1 = 1
за да накара заявката да работи в случай, че към заявката не е предаден параметър и в този случай целият резултат ще бъде върнат, тъй като 1 = 1
винаги е вярно.