venerdì, novembre 21, 2008

System.Web.UI.WebControls.Parameter ..... DbType !

SFOGO!

Ma porca la put...a! E' mai possibile sapere le cose in modo semplice senza diventare matti con Reflector, pezzi di blog e ammenicoli vari?!?!?

Iniziamo: ambiente di sviluppo VS2005 su Vista. Un bel SqlDataSource su pagina asp.net e un po' di parametri di update ed insert. Niente di strano. Incomiciano le cose strane. Una proprità nuova... non la ricordavo... DbType sui parametri. Qualche problema con le date e poi funziona tutto. Ho un po' di fretta e non indago troppo (mannaggia a me!).

Dopo un po' di giorni, faccio un deploy su Win2003 server. E mi becco subito un bel errore:
Type 'System.Web.UI.WebControls.Parameter' does not have a public property named 'DbType'.

Ma come è possibile? Net 2.0 su Vista, Net 2.0 in Win2003... boh! Dopo un po' di prove mia affido a Reflector e sorpresa: la classe System.Web.UI.WebControls.Parameter su Vista è diversa dalla classe System.Web.UI.WebControls.Parameter su Win2003. C'è una proprietà in più: DbType. Ovviamente ci sono anche i vari costruttori per poterla gestire.
Cerca, cerca, cerca e su MSDN, alla pagina http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.parameter.dbtype.aspx al fondo mi casca l'occhio su una cosa strana:
Supported in: 3.5 SP1, 3.0 SP2, 2.0 SP2

Ma da quando c'è Net 2.0 Sp2? Mi sono perso qualcosa? Sembrerebbe di si... ma... cercando ancora su Google viene fuori che Net 2.0 Sp2 non esiste come pacchetto a se stante ma viene installato da... Net 3.5 SP1! Ma porca la put....!

Fine dello sfogo!

PS: ok, è anche colpa mia... nella fretta non ho indagato sul quel parametro DbType... avrei dovuto farlo. Mea culpa!