Segna il video come già completato  
Se vuoi, sarebbe utile un giudizio su questo video    
In questo video vedremo le novità di Visual Studio 2010 nella gestione degli intervalli di tempo intervalli di tempo. Già in Visual studio 2008 erano rappresentati dei TimeSpan come sequenza di giorni ore minuti secondi e frazione di secondo. Il segno negativo che vediamo qua avanti è opzionale, e significa che se vogliamo possiamo definire un intervallo di tempo negativo. Facciamo un esempio: creando un nuovo progetto di tipo applicazione console, nel metodo Main() di questa applicazione andiamo a creare un nuovo intervallo di tempo di tipo TimeSpan, che quindi prenderà i valori 10 giorni 20 ore 30 minuti e 40 secondi e 50 millesimi di secondo. Proviamo a stampare a video questo intervallo di tempo. Avviamo l'applicazione e vediamo che il risultato è la rappresentazione in formato di stringa del nostro intervallo di tempo. Ciò che abbiamo visto finora è il metodo ToString() della classe TimeSpan, che come abbiamo potuto vedere ci permette di stampare video rappresentazione testuale di un intervallo di tempo. Naturalmente questo metodo era già presente anche in Visual Studio 2005 in Visual Studio 2008 e otto nella release di Visual Studio 2010 il metodo ToString ha aggiunto un overload. Vediamo il primo: rimuoverò dal certo parametro di tipo stringa ossia il formato con cui rappresentare l'intervallo di tempo. Possiamo usare sia di formati preesistenti oppure dei formati particolari. Vediamo prima i formati già esistenti: possiamo andare ad esempio ad usare il formato G. che sta a rappresentare un intervallo di tempo in formato esteso ad esempio ToString() con G maiuscola come parametro parametro formato ci permette di rappresentare in formato esteso il nostro intervallo di tempo. Possiamo usare anche in formato ridotto indicando invece che la G maiuscola usiamo la G minuscola. Avviamo il nostro progetto Visual Studio 2010 e vediamo a differenza. Eccolo qua. Questo è il formato ridotto. Al contrario, se volessimo utilizzare il formato da noi definito dovremo scrivere una cosa simile a questa, cioè non più G minuscolo o maiuscolo come parametro di formato ma il nostro formato per esteso. Proviamo a lanciare la nostra applicazione Visual Studio 2010 e vediamo che effettivamente abbiamo potuto scrivere in forma testuale nostro intervallo di tempo. Utilizza il formato da noi indicato il secondo overload del metodo ToString() e il seguente e oltre al parametro Format che abbiamo visto finora, accetta un altro parametro di tipo IFormatProvider, che ci consente di specificare anche a cultura nella quale esprimere il nostro intervallo di tempo. Ad esempio se sostituiamo queste tre righe di codice con il secondo overload, nel quale indichiamo il formato e come cultura l'americano per la prima riga e l'italiano per la seconda possiamo vedere che la nostra stringa rappresentante il nostro intervallo di tempo viene espressa in due formati di cultura differente con il punto come separatore. Per il l'americano con la virgola come separatore per l'italiano. Altri due metodi ai quali in Visual studio 2010 è stato aggiunto un overload sono Parse e TryParse. Già in Visual studio 2008 Parse e TryParse venivano chiamati con questi due modi Parse e TryParse utilizzando come parametro una stringa che rappresentava la stringa da convertire in intervallo di tempo, che è praticamente l'operazione inversa rispetto al metodo ToString che abbiamo visto finora. A questi metodi in Visual Studio 2010 si aggiunge un ulteriore overload che permette di indicare la cultura. Quindi ad esempio se andiamo di inserire il metodo Parse possiamo utilizzare anche il parametro addizionale che rappresenta la cultura con cui è rappresentare il l'intervallo di tempo. Proviamo ad avviare l'applicazione. Vediamo che effettivamente la nostra stringa è stata convertita correttamente in un tipo TimeSpan, in intervallo di tempo. Questo utilizziamo un'altra stringa da convertire questa volta con il punto, cioè nel formato americano e tentiamo di trasformarla in un tipo TimeSpan, utilizzando però una cultura italiana. Possiamo vedere che avviando l'applicazione si genera un errore comprensibile. Eccolo qua. La stringa s non è stata riconosciuta come un testo valido perché è stata fornita una cultura che non è applicabile alla stringa che abbiamo passato come parametro. Sempre relativamente al tipo TimeSpan, è stato introdotto poi in Visual Studio 2010 il metodo ParseExact . ParseExact convertirà la stringa che gli passiamo in un intervallo di tipo TimeSpan, specificando il formato esatto che la nostra stringa dovrà avere per essere riconosciuta correttamente come TimeSpan. Quindi il primo overload di questo metodo è il seguente ParseExact della stringa un'altra stringa di formato e la cultura con la quale vogliamo rappresentare l'intervallo di tempo. Ad esempio questa riga di codice ci permette di convertire questa stringa utilizzando un formato ridotto ed utilizzando una cultura di tipo italiano. Vediamo adesso il secondo overload che ci permette di indicare invece del solito formato una serie di formati in forma di array di stringa da convertire in testo. E se soddisferà quindi uno di questi formati la funzione ParseExact avrà successo altrimenti no. Facciamo un esempio creiamo quindi un array di formati. Ecco qui. Questa stringa che passeremo come primo parametro verrà convertita in TimeSpan quando verrà valutato il formato G minuscolo cioè il formato ridotto, perché appunto la rappresentazione in questa stringa è stata fornita in formato ridotto. L'overload successivo che è anche l'ultimo, aggiunge oltre ai parametri che abbiamo già visto TimeSpanStyles che non è altro che un membro di System.Globalization.TimeSpanStyles ed introduce le opzioni di formattazione del testo in valori possibili di questa enumerazione. Sono un array tramite il quale la stringa viene interpretata come un intervallo negativo solo se è presente il segno meno prima della nostra stringa oppure un negativo grazie al quale le stringa viene sempre interpretata come intervallo negativo. Ad esempio se volessimo indicare con certezza un TimeSpan negativo potremo scrivere quanto segue: utilizzando il membro dell'enumerazione si un negativo questo stesso parametro TimeSpan può essere indicato anche con array di formati nel quarto per lode il metodo ParseExact quindi come abbiamo visto qua abbiamo utilizzato il metodo che utilizza il formato singolo possiamo usare di tennis test ha il anche con la arredi formati