Problema di traduzione delle date

martedì 15 maggio 2007 - 13.58

BiGi Profilo | Newbie

Buongiorno a tutti.
Ho un problema con un prodotto commerciale sviluppato su .NET che mi sta facendo impazzire: si tratta di un sistema per la schedulazione oraria di palinsesti comprendenti filmati WindowsMedia, ed è stato sviluppato da un'azienda americana.

L'ho installato su un Windows Server 2003 Standard Edition, completo di IIS e .NET Framework 1.1.4322 (quello installato di default su tale sistema operativo). Le Regional Options sono impostate a Italian (Italy).

Ho avuto subito problemi con gli script che si occupavano del calendario: quando si selezionava una data, questa veniva passata in formato gg/mm/aaaa mentre evidentemente il sistema se la attendeva in mm/gg/aaaa, restituendo la seguente eccezione NON GESTITA (visualizzata quindi sul browser):

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

Dopo aver provato senza successo varie strategie, inclusa la reinstallazione dell'applicativo e di IIS impostando le Regional Options a English (United States), ho poi scoperto che le opzioni di globalization nel Web.config non erano state correttamente valorizzate, e che aggiungendo il parametro
culture="en-US"
il problema si risolveva.

Tutto questo lungo preambolo per dire che la mia gioia è durata veramente poco poiché più avanti nella procedura mi sono imbattuto in un errore simile (stavolta 'trapped' e quindi la segnalazione proviene dall'Event Viewer):

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

Mi viene il sospetto che possa dipendere dalla lingua del .NET Framework (anche perché, nonostante l'impostazione delle opzioni di globalization, è evidente dal log dell'errore che l'ora viene passata nel formato europeo) ma, essendo poco pratico del medesimo, non sono riuscito a capire come posso verificare qual'è la lingua del pacchetto attualmente installato.
In verità sono tutt'altro sicuro che la causa sia quella...

Qualcuno può darmi una mano, per favore?

Grazie 1000!
Bruno

munissor Profilo | Senior Member

La data la passi come stringa? Se si puoi usare DateTime.ToString passando come parametro la stringa di formato "MM/dd/yyyy" come si aspetta il sistema.
Così rendi la formattazione indipendente dalle impostazioni linguistiche del tuo client.

Occhio che questo funziona solo se effettivamente il sistema che hai acquistato accetta date mese/giorno/anno in qualsiasi caso...

BiGi Profilo | Newbie

>La data la passi come stringa? Se si puoi usare DateTime.ToString
>passando come parametro la stringa di formato "MM/dd/yyyy" come
>si aspetta il sistema.
>Così rendi la formattazione indipendente dalle impostazioni linguistiche
>del tuo client.
>
>Occhio che questo funziona solo se effettivamente il sistema
>che hai acquistato accetta date mese/giorno/anno in qualsiasi
>caso...

Grazie del suggerimento, indagherò!

Tuttavia, volevo capire se c'era un modo per intervenire sulla questione senza mettere mano al codice vero e proprio delle pagine...
Finché sono modifiche ai file di configurazione (come ad esempio il Web.config citato) oppure alle impostazioni del sistema operativo non ci sono problemi, ma non oso manomettere il codice che fa parte di un prodotto commerciale.

munissor Profilo | Senior Member

In caso segnala il bug a chi ti ha venduto il software..

BiGi Profilo | Newbie

>In caso segnala il bug a chi ti ha venduto il software..
Ehm...ovviamente l'ho fatto...però il fornitore sta avendo dei problemi ad avere la risposta dal produttore...
Per questo volevo percorrere una via alternativa...

munissor Profilo | Senior Member

<configuration>
<system.web>
<globalization
culture="en-US" />
</system.web>
</configuration>

Puoi provare così nel file web.config...
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-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5