|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Nov 2010
Messaggi: 2
|
[c# 3.5] batch windows e date in inglese
Ciao a tutti,
ho problema scocciante. Sto sviluppando un batch in C# 3.5 che deve interfacciarsi con db2. Il problema è che quando lo faccio girare sul server di sviluppo che ha le impostazioni in inglese,l'esecuzione va in eccezione mostrandomi il seguente messaggio: "String was not recognized as a valid DateTime" in pratica mentre in locale la data è del tipo 31/12/2010 12.00.00, sul server viene presa la data nel formato 12/31/2010 12:00:00 AM. Trattandosi di un batch e non di una applicazione web non posso globalizzare il tutto sul web config.Non so se c'è un modo per farlo aggiungendo qualche chiave nell'app.config. Ipotizzando una variabile dateString che quindi valorizzo con quello che mi arriva e cioé con qualcosa del tipo : "12/31/2010 12:00:00 AM",ho provato diverse soluzioni: 1) DateTime dateValue = Convert.ToDateTime(dateString, new System.Globalization.CultureInfo("it-IT")); 2) DateTime _dateValue = DateTime.Parse(dateString, new CultureInfo("en-US", false)); DateTime datevalue = Convert.ToDateTime(string.Format("{0:d}", _dateValue)); 3) string[] formats = new string[] { "MM/dd/yyyy", "dd/MM/yyyy", "MM/dd/yyyy HH:mm", "dd/MM/yyyy HH.mm", "MM/dd/yyyy hh:mm tt", "dd/mm/yyyy hh.mm tt", "MM/dd/yyyy HH:mm:ss","dd/mm/yyyy HH.mm.ss", "MM/dd/yyyy hh:mm:ss tt", "dd/MM/yyyy hh.mm.ss tt" }; DateTime datevalue = DateTime.ParseExact(dateString, formats, null, DateTimeStyles.None); 4) System.Threading.Thread thisThread = System.Threading.Thread.CurrentThread; thisThread.CurrentCulture = new System.Globalization.CultureInfo("it-IT"); DateTime datevalue = Convert.ToDateTime(string.Format("{0:d}", dateString)); In tutti i casi l'eccezione lanciata è sempre la stessa. Ho come la sensazione che sia una questione assai semplice da risolvere. Qualcuno ha idea di come poterne venire a capo? Grazie!! |
|
|
|
|
|
#2 |
|
Junior Member
Iscritto dal: Dec 2010
Messaggi: 18
|
non ho capito la vuoi tradurre in standard ita o ne hai una in ita e la vuoi tradurre in Us?
Ultima modifica di m-mad : 28-01-2011 alle 16:51. |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Dec 2003
Messaggi: 73
|
No,vorrei utilizzare l'italiano sia per date che per importi con virgola in tutte le elaborazioni che fa il batch.Il problema è che dal database mi arrivano le date nel formato mm/dd/yyyy hh:mm:ss tt, mentre gli importi (decimale) mi arrivano col punto invece che con la virgola.Se impongo in ogni singola classe del batch il currentculture su it-IT allora mi va in eccezione quando uso una data,poiché mi arriva nel formato sopraspecificato.
Ergo sto impazzendo per trovare un meccanismo per risolvere il problema. Grazie |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Dec 2003
Messaggi: 73
|
Piccolo Up... per richiesta grande aiuto!!!
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:09.



















