guarda io piu di qualche volta ho creato filtri con le date e quello che ti posso dire è che quel modo costruire le query è piuttosto superato (e pericoloso) in asp.net
quello che dovresti fare è sfruttare la sezione WhereParameter del datasource e impostando un parametro per la data ad esempio
<asp:Parameter Type="DateTime" Name="MyDate" />
quello che fai nel codice è sempilcemente impostare la proprietà DefaultValue con la data richiesta
... per farlo funzionare ovviamente questo parametro dovrebbe avere un valore iniziale che lo puoi settare con la data minima o massima (dipende dal tipo di confronto) che la sorgente dati sottostante ammette .. ad esempio per sqlServer potresti scrivere qualcosa del tipo
questa inizializzazione la puoi fare ad esempio nel page_init della tua paginacodice:if(!Page.isPostBack) { MioDataSource.WhereParameters["MyDate"].DefaultValue = SqlDateTime.MinValue.ToString(); }
per approfondimenti sui parametrei potresti guardare questohttp://msdn.microsoft.com/en-us/library/xt50s8kz.aspx