Salve a Tutti,

ho un problema con un SqlDataSource. Vi spiego qual è il mio problema.

Sto implementando una pagina per la ricerca clienti che si può effettuare in 2 modi:

- o cliccando sull'iniziale
- oppure facendo una ricerca inserendo del testo in una textbox e scegliendo su quale campo si vuol cercare (codice, ragione sociale, indirizzo...) visualizzando i risultati in una gridview col binding al datasource in oggetto.

La query che ho definito per la mia select è la seguente:

codice:
SELECT DISTINCT CardCode, CardName, CardType, Address, ZipCode, LicTradNum, City, County, Country, E_Mail FROM OCRD WHERE (CardCode LIKE '%' + @CardCode + '%' OR @CardCode IS NULL) AND (CardName LIKE @CardName + '%' OR @CardName IS NULL) AND (CardType = 'C' OR CardType = 'L')
Se provo la query nel layout dell'sql data source, questa viene eseguita correttamente, tirando fuori i risultati corretti.

Quando provo ad utilizzarla nel codice, la query non viene lanciata.

Cioè cliccando su un pulsante "Cerca" vado a prelevare il valore nella textbox e vado a settare i parametri di selezione della query nel modo seguente:

codice:
SqlDataSource1.SelectParameters.Item("CardCode").DefaultValue = sCriteria
SqlDataSource1.SelectParameters.Item("CardName").ConvertEmptyStringToNull = True
Dove sCriteria è il testo inserito nella textbox

Dopodichè sia provando con il comando

SqlDataSource1.Select(Arguments)

Sia non lanciando il command, la query non viene eseguita. Da cosa può dipendere?

Grazie a chi vorrà aiutarmi.