¿EN qué parte del código es que invocas al método DatosBusqueda() eh?
Porque ahí es donde cometes el error, pues tu código espera que todos los argumentos estén presentes.
Pero no es así, en tu lógica descartas una variable u otra: eso es parte del error, ¿o porque indicaste que todos los argumentos sean obligatorios si no es así?