Novità di Visual C#

Aggiornamento: Luglio 2008

Novità di Visual C# 2008 Service Pack 1

Linguaggio C#

Funzionalità

Descrizione

Vari miglioramenti del compilatore

Sono stati apportati numerosi miglioramenti al compilatore C# per rimuovere incoerenze con le specifiche del linguaggio. Alcuni miglioramenti costituiscono modifiche importanti, altri sono semplici aggiornamenti o miglioramenti del software. Per ulteriori informazioni sulle modifiche importanti, vedere Ultime modifiche in Visual C# 2008. Per ulteriori informazioni su altri bug risolti nel Service Pack 1, vedere Elenco commenti e problemi risolti per Visual Studio 2008 Service Pack 1 Beta per Visual C#.

IDE di Visual C#

Funzionalità

Descrizione

Live Semantic Errors

Visual C# 2008 Service Pack 1 introduce Live Semantic Errors, una nuova funzionalità che fornisce un insieme più completo di informazioni di errore sul codice. Questa funzionalità è in grado di rilevare gli errori a livello di espressione che in precedenza venivano segnalati solo dopo una compilazione. Gli errori vengono evidenziati con sottolineature ondulate di colore rosso man mano che viene scritto il codice. Per ulteriori informazioni su queste sottolineature ondulate, vedere Modifica di codice (Visual C#).

Debug di query LINQ

Il debug delle query LINQ è stato notevolmente migliorato in Service Pack 1.

  • Le variabili di intervallo possono ora essere visualizzate nella finestra Espressioni di controllo e in Suggerimenti dati quando si eseguono le singole righe di un'espressione di query.

  • Il debugger non nasconde più i nomi di tipi anonimi e consente di visualizzarli durante le operazioni di cast e la creazione di istanze. In questo modo è possibile creare istanze temporanee di tipi anonimi durante una sessione di debug. I cast su e da tipi anonimi vengono valutati correttamente.

  • Le stringhe generate per Aggiungi espressione di controllo sono state migliorate e generano espressioni che è possibile valutare più spesso rispetto alla versione originale di Visual Studio 2008.

Per ulteriori informazioni, vedere Sree's ventures in code space sul sito Web Microsoft (informazioni in lingua inglese).

Nella soluzione vengono visualizzati i commenti dell'elenco attività per tutti i file

Nelle release precedenti di Visual Studio, l'elenco attività conteneva unicamente i commenti nei file aperti. In Visual Studio 2008 Service Pack 1, l'IDE di C# visualizza i commenti delle attività in tutti i file aperti e chiusi nella soluzione. Per ulteriori informazioni, vedere Procedura: creare commenti all'Elenco attività.

Refactoring di ridenominazione nei progetti Windows Presentation Foundation

Visual Studio 2008 Service Pack 1 consente di utilizzare la funzionalità del refactoring di ridenominazione per rinominare i riferimenti definiti in XAML. Per ulteriori informazioni sul refactoring di ridenominazione, vedere Rinomina.

LINQ

Funzionalità

Descrizione

Miglioramenti al metodo [M:Enumerable.Cast`1]

Visual C# 2008 Service Pack 1 migliora le prestazioni del metodo Enumerable.Cast<T> disattivando le conversioni dei valori primitivi e le conversioni definite dall'utente in modo esplicito. Un esempio di conversione di valore primitivo è una conversione dal tipo di dati int al tipo di dati long.

Miglioramenti delle prestazioni dei metodi [M:Enumerable.Where`1] e [M:Enumerable.Select`1]

Visual C# 2008 Service Pack 1 migliora le prestazioni dell'operatore di query Where standard e dell'operatore di query standard Select.

Novità nella versione finale originale di Visual C# 2008

Linguaggio C# 3.0

Nel linguaggio e nel compilatore C# 3.0 sono disponibili alcune nuove funzionalità. Questi nuovi costrutti di linguaggio, se utilizzati singolarmente, risultano utili in svariati contesti e, nel loro insieme, per l'esecuzione di LINQ (Language-Integrated Query). Per ulteriori informazioni su LINQ, vedere The LINQ Project (informazioni in lingua inglese).

Nella tabella seguente sono elencate le nuove funzionalità del linguaggio C# 3.0:

Funzionalità

Descrizione

Matrici e variabili locali tipizzate in modo implicito

Se utilizzata con le variabili locali, la parola chiave var indica al compilatore di dedurre il tipo degli elementi variabile o matrice dall'espressione sul lato destro dell'istruzione di inizializzazione.

Inizializzatori di oggetto

Attiva l'inizializzazione dell'oggetto senza chiamate esplicite a un costruttore.

Inizializzatori di insieme

Attiva l'inizializzazione di insiemi con un elenco di inizializzazione invece che con chiamate specifiche a Add o a un altro metodo.

Metodi di estensione

Estende le classi esistenti utilizzando metodi statici che possono essere richiamati utilizzando la sintassi del metodo di istanza.

Tipi anonimi

Attiva la creazione immediata di tipi strutturati senza nome che possono essere aggiunti agli insiemi e a cui è possibile accedere utilizzando var.

Espressioni lambda

Attiva le espressioni inline con parametri di input che possono essere associati a delegati o strutture ad albero dell'espressione. Vedere anche Funzioni anonime (Guida per programmatori C#).

Parole chiave di query

Parole chiave che specificano clausole in un'espressione di query:

  • Clausola/e from

  • Clausola where (facoltativa)

  • Clausole di ordinamento (facoltative)

  • Clausola join (facoltativa)

  • Clausola select o group

  • Clausola into (facoltativa)

Proprietà implementate automaticamente

Attiva la dichiarazione di proprietà utilizzando la sintassi semplificata.

Definizioni di metodi parziali

I tipi parziali possono contenere metodi parziali.

Compilatore C# 3.0

  • Opzioni del compilatore /win32Manifest e /noWin32Manifest.
    Queste nuove opzioni del compilatore vengono utilizzate per specificare livelli di esecuzione richiesti per programmi in esecuzione su Windows Vista.

IDE di Visual C#

Funzionalità

Descrizione

Destinazioni multiple

Visual Studio 2008 consente di specificare una versione di .NET Framework per il progetto, .NET Framework 2.0, 3.0 o 3.5. Per versione di destinazione di .NET Framework per un'applicazione si intende la versione richiesta su un computer per eseguire l'applicazione su tale computer. Per ulteriori informazioni, vedere Scelta di una versione specifica di .NET Framework.

Nuovi modelli e tipi di progetto

Sono disponibili diversi nuovi modelli di progetto per Windows Presentation Foundation, Windows Communication Foundation e progetti Web. Per ulteriori informazioni, vedere Modelli di progetti in Visual C# e Modelli di progetto predefiniti di Visual Studio.

Supporto IntelliSense per C# 3.0

Nell'editor del codice di Visual C# sono disponibili il completamento delle istruzioni e le informazioni rapide per supportare i nuovi costrutti di linguaggio seguenti in C# 3.0:

  • Variabili locali tipizzate in modo implicito

  • Espressioni di query

  • Metodi di estensione

  • Inizializzatori di oggetto/insieme

  • Tipi anonimi

  • Espressioni lambda

  • Metodi parziali

Per ulteriori informazioni, vedere IntelliSense per Visual C#.

Supporto del refactoring per C# 3.0

Le funzionalità di refactoring, Rinomina, Modifica firma, Estrai metodoe Promuovi locale sono state aggiornate per supportare i nuovi costrutti di linguaggio seguenti:

  • Espressioni di query

  • Metodi di estensione

  • Espressioni lambda

Il refactoring fornisce inoltre nuovi avvisi e opzioni che consentono di evitare conseguenze impreviste da un'azione di refactoring. Per ulteriori informazioni, vedere Refactoring.

Formattazione del codice

L'editor del codice supporta opzioni di formattazione per diversi nuovi costrutti di linguaggio C# 3.0 incluse le espressioni di query. Per ulteriori informazioni, vedere Formattazione, C#, Editor di testo, finestra di dialogo Opzioni.

Organizzazione di istruzioni using

L'editor del codice di Visual C# offre un modo semplice per ordinare le dichiarazioni using ed extern e rimuovere quelle non in uso.

Vedere anche

Altre risorse

LINQ (Language-Integrated Query)

Is C# becoming a functional language? (informazioni in lingua inglese)

Nuove classi di libreria in "Orcas"

Cronologia delle modifiche

Data

Cronologia

Motivo

Luglio 2008

Aggiunta una sezione su Visual C# 2008 Service Pack 1.

Modifica di funzionalità in SP1.