Voglio che il mio datetime sia convertito in una stringa in formato "gg / MM / aaaa"
Ogni volta che lo converto usando DateTime.ToString("dd/MM/yyyy"), ottengo dd-MM-yyyyinvece.
Esiste una sorta di informazione sulla cultura che devo impostare?
Voglio che il mio datetime sia convertito in una stringa in formato "gg / MM / aaaa"
Ogni volta che lo converto usando DateTime.ToString("dd/MM/yyyy"), ottengo dd-MM-yyyyinvece.
Esiste una sorta di informazione sulla cultura che devo impostare?
Risposte:
La barra è un delimitatore di data, pertanto verrà utilizzato il delimitatore di data della cultura corrente.
Se vuoi codificarlo per usare sempre la barra, puoi fare qualcosa del genere:
DateTime.ToString("dd'/'MM'/'yyyy")
Passa CultureInfo.InvariantCulture come secondo parametro di DateTime, restituirà la stringa come desideri, anche un formato molto speciale:
DateTime.Now.ToString("dd|MM|yyyy", CultureInfo.InvariantCulture)
tornerà: 28 | 02 | 2014
Aggiungi CultureInfo.InvariantCulturecome argomento:
using System.Globalization;
...
var dateTime = new DateTime(2016,8,16);
dateTime.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);
Sarà di ritorno:
"16/08/2016"
Se usi MVC, tabelle, funziona così:
<td>@(((DateTime)detalle.fec).ToString("dd'/'MM'/'yyyy"))</td>
Domanda / risposta stupida forse, ma ci hai provato dd/MM/yyyy? Nota la capitalizzazione.
mmè per minuti con uno zero iniziale. Quindi dubito che sia quello che vuoi.
Questo può essere utile: http://www.geekzilla.co.uk/View00FF7904-B510-468C-A2C8-F859AA20581F.htm