Problema nel parsing delle date

lunedì 22 maggio 2006 - 12.37

adima80 Profilo | Junior Member

Ciao ho creato la mia applicazione .Net, compilata, ho creato l'installe e l'ho distribuita; ads ho solo un piccolo problema, nn funziona sul mio portatile. L'errore generato è questo:
Index was outside the bounds of the array.

Questa eccezzione ho notato che viene generata quando devo fare il parsing di una data da una stringa presente nel db. La stringa ha questo formato "02/12/2005". Il db è SQLSERVER Express, e risiede si di un'altra macchina.

Per cercare di risolvere il problema ho installato VS 2005 sul pc e mi son messo a fare qualche prova e ho notato che lo stesso errore mi viene dato sia quando faccio
DateTime.Parse("01/01/2006")
sia quando faccio
DateTime.Parse(DateTime.Today.ToShortDateTimeString())
. L'eccezzione generata è questa:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra


Per cercare di risolvere ho controllato le impostazioni internazionali del portatile e le ho confrontate con quelle di altri pc; l'unica differenza stava nel formato della data corta, che sul portatile era gg/MM/aa mentre sugli altri pc gg/MM/aaaa, ho provato a formattare la data nel secondo modo anche sul pc portatile ma niente da fare, viene sempre generata questa eccezzione.


Grazie per l'attenzione
Ciao

Cteniza Profilo | Guru

Piccolo esempino che dovrebbe funzionare:
Dim formato As String = "dd/MM/yyyy"
Dim myCultureInfo As New System.Globalization.CultureInfo("it-IT", true)
Dim myText As String = "22/05/2006"
Dim dt As Date = System.DateTime.ParseExact(myText,formato,myCultureInfo)

adima80 Profilo | Junior Member

>Piccolo esempino che dovrebbe funzionare:
>Dim formato As String = "dd/MM/yyyy"
>Dim myCultureInfo As New System.Globalization.CultureInfo("it-IT",
>true)
>Dim myText As String = "22/05/2006"
>Dim dt As Date = System.DateTime.ParseExact(myText,formato,myCultureInfo)


Ok funzia... ads xò vorrei sapere perchè solo su quel pc non funziona... Non ho nessuna intenzio di andarmi a cercare ogni assegnazione di data nell'applicazione e modificarla in questo modo. Inoltre ho notato che sebbene le impostazioni internazionali siano settate su italiano l'ora dell'orologio di sistema è impostata come 00:00:00 AM/PM
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5