A: 

How about adding the lists using JavaScript (jQuery) on the client-side when required? The data can be populated using an Ajax call. Once all fields have bee nfilled and the user submits, the action method can take all incoming parameters and perform a search based on that.

maartenba