|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Sep 2009
Messaggi: 59
|
[C#] SQL SERVER 2005: inserire a DB solo cifre numeriche senza segno
Ciao, vorrei capire come posso risolvere il seguente problema.
ho una textbox nella quale l'utente deve inserire al max 10 cifre tutte numeriche e inserire tale valore a DB. allora a DB ho definito la colonna come BIGINT (l'int era troppo piccolo per usarlo) mentre da codice c# uso Convert.ToInt64 per -trasformare il valore immesso nella textbox in un tipo long (l'int era troppo piccolo per usarlo) -e gestisco cosi anche l'eccezzione nel caso vengano immessi caratteri strani. ho due problemi - se l'utente inserisci il segno + cioè +444 non da nessun errore. il controllo da mettere per evitare di far inserie il + è di usare un conrollo ditipo indexof e visualizzare l'errore oppure c'è un altro modo per evitare di immetter il + ? grazie Gianluca grazie Gianluca |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2007
Città: Terni
Messaggi: 331
|
Ciao,
ti conviene fare un replace con regular expression prima di immetere il valore nel db. string valoreNumerico = System.Text.RegularExpressions.Regex.Replace(NomeTextBox.Text, @"[\D]", ""); In questo modo la variabile valoreNumerico avrà solo numeri, senza lettere o caratteri speciali, poi fai la conversione in Int64.
__________________
Corsair Obsidian 800D | Corsair HX850i | Gigabyte Aorus X570 Ultra | Ryzen 3700x | 16Gb Corsair Vengeance PRO RGB 3600mhz CL16 | Gigabyte RX 5700 XT | Corsair MP510 480Gb + WD BLue 4Tb Monitor Samsung C32HG70 | Corsair K70 RGB MK.2 | Corsair Dark Core Pro RGB SE | Corsair MM1000 | Corsair Virtuoso RGB SE | Corsair ST50 |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:15.



















