7 messaggi dal 21 agosto 2008
Buongiorno a tutti   ,
prima di porre il mio problema, faccio i complimenti a tutto lo staff del forum e un saluto agli utenti del forum!
Porgo in breve la questione (premettendo che sono fortemente principiante con asp.net e VB).
In pratica, ho una gridview che mi estrae una serie di record.
Per tutte le colonne devo poter fare l'ordinamento ASC e DESC e questo lo risolvo ponendo il sortexpression su tutti. Il problema nasce nel momento in cui effettuo l'ordinamento sulla colonna CODICE.
Questo campo su SQL Server è un nchar(7) ma in realtà è formato da solo numeri, di conseguenza al momento di ordinare l'operazione viene svolta correttamente solo che mi ritrovo la situazione antipatica di vedermi la colonna CODICE ordinata così:

101023
10148
103351
104
105
...
...
e viceversa. Premetto che non posso assolutamente modificare il DB, quindi dovrei trovare una soluzione tramite ASP.net
GRAZIE MILLE in anticipo
al dilà che mi viene da chiedere perche usare nchar se il campo è rappresenta un intero, comunque una delle soluzione che mi viene a mente è se usi un DataTable creare una colonna dove inserisci il tuo codice convertito in inero.

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
7 messaggi dal 21 agosto 2008
Come ti dicevo, il DB non lo posso cambiare..decisioni dall'alto
e devo usare una gridview..
infatti ti dicevo di non toccare il db, ma ad esempio se la tua GridView è "collegata" ad un DataTable aggiungere una colonna li.

altra domanda, a cosa è collegata la tua GridView, davo per scontato che lo fosse ad un DataTable, usi un SqlDataSource? o altro?

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
7 messaggi dal 21 agosto 2008
Si tratta di un SqlDataSource, avevo pensato a una soluzione tipo questa presente su questo link http://mikepope.com/blog/DisplayBlog.aspx?permalink=1418&count=no ma non sono riuscito ad adattarla al mio problema
ok SqlDataSource, considera che puoi sempre utilizzare le funzioni di SQLServer tipo Cast & Convert per aggiungere una colonna calcolata al risultato della tua Select

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
7 messaggi dal 21 agosto 2008
il discorso è che mi trovo di fronte a una migrazione da asp a asp.net, il campo in questione veniva prima ordinato "manualmente" con una query sulla colonna,specificando ORDER BY CAST(CODICE,INT). la soluzione che hai proposto tu, è ottima effettivamente, ma essendo che successivamente questo campo codice lo utilizzo per altre operazioni all interno della stessa pagina non vorrei ritrovarmi a dover fare di nuovo il cast andando ad intaccare il codice VB.
Quello che vorrei capire e se possibile effetturare una sub o una function o quel che è per personalizzare il sortexpression solo ed esclusivamente su questo campo codice, riuscendo a mantenere inalterata la sua natura e quindi ottenere la portabilità del codice vb il più possibile.
grazie!
scusa ma non capisco, se nella tua select aggiunsi qualcosa del genere Select Nome, CAST(CODICE,INT) as CodiceInt, Codice ecc ecc

dove sta il problema? ti trovi una colonna in più che gestisci tranquillamente, laltra colonna CODICE remane inalterata

p.s. se vuoi davvero la portabilità del codice devi abbandonare secondo me quanto prima SqlDataSource

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.
Community
Ultimi messaggi
UTENTI ONLINE
    In primo piano

    I più letti di oggi

    Media
    In evidenza
    MISC