Lo nuevo en Visual C#

Actualización: Julio de 2008

Lo nuevo en Visual C# 2008 Service Pack 1

Lenguaje C#

Característica

Descripción

Diversas mejoras del compilador

Se han realizado numerosas mejoras en el compilador de C# para quitar incoherencias con la especificación de lenguaje. Algunas de ellas constituyen cambios importantes, si bien otras son simples actualizaciones o mejoras del software. Para obtener más información sobre los cambios importantes, vea Cambios problemáticos en Visual C# 2008. Para obtener información sobre los demás errores corregidos en el Service Pack 1, vea List of changes and fixed issues for Visual Studio 2008 Service Pack 1 Beta for Visual C#.

IDE de Visual C#

Característica

Descripción

Errores semánticos activos

Visual C# 2008 Service Pack 1 introduce los errores semánticos activos, una nueva característica que proporciona un conjunto de información de error más completo sobre su código. Esta característica detecta errores del nivel de expresión que antes solo se notificaban después de una compilación. Subraya los errores con líneas rojas onduladas a medida que escribe código. Para obtener más información sobre el subrayado ondulado, vea Editar código (Visual C#).

Depuración de consultas LINQ

La depuración de las consultas LINQ se ha mejorado notablemente en el Service Pack 1.

  • Ahora las variables de rango se pueden ver en la ventana Inspección y en Información sobre datos cuando se recorren las líneas individuales de una expresión de consulta.

  • El depurador ya no oculta los nombres de los tipos anónimos y permite que aparezcan en conversiones de tipos y creaciones de instancias. Esto permite que se creen instancias temporales de tipos anónimos durante una sesión de depuración. Las conversiones a y de tipos anónimos se evalúan correctamente.

  • Se han mejorado las cadenas generadas para Agregar a Inspección y generan expresiones que pueden evaluarse con más frecuencia que en la versión de lanzamiento original de Visual Studio 2008.

Para obtener más información, vea Sree's ventures in code space en el sitio web de Microsoft.

Se muestran comentarios de la lista de tareas para todos los archivos de la solución

En versiones anteriores de Visual Studio, la lista de tareas solo incluía comentarios sobre las tareas de los archivos abiertos. En Visual Studio 2008 Service Pack 1, el entorno de desarrollo integrado (IDE) de C# muestra comentarios sobre las tareas de todos los archivos de la solución, tanto abiertos como cerrados. Para obtener más información, vea Cómo: Crear comentarios de lista de tareas.

Refactorización de cambio de nombre en los proyectos de Windows Presentation Foundation

Visual Studio 2008 Service Pack 1 permite utilizar la característica de refactorización de cambio de nombre para cambiar el nombre de las referencias definidas en XAML. Para obtener más información acerca de la refactorización de cambio de nombre, vea Cambiar nombre.

LINQ

Característica

Descripción

Mejoras del método [M:Enumerable.Cast`1]

Visual C# 2008 Service Pack 1 mejora el rendimiento del método Enumerable.Cast<T> al deshabilitar las conversiones de valores primitivos y las conversiones de usuario definidas explícitamente. Un ejemplo de conversión de valor primitivo es una conversión del tipo de datos int en el tipo de datos long.

Mejoras en el rendimiento de los métodos [M:Enumerable.Where`1] y [M:Enumerable.Select`1]

Visual C# 2008 Service Pack 1 mejora el rendimiento de los operadores de consulta estándar Where y Select.

Lo nuevo en la versión de lanzamiento original de Visual C# 2008

Lenguaje C# 3.0

El lenguaje C# 3.0 y su compilador presentan varias características de lenguaje nuevas. Estas nuevas construcciones de lenguaje son útiles por separado en varios contextos y colectivamente para realizar consultas Language-Integrated Query (LINQ). Para obtener más información sobre LINQ, vea The LINQ Project.

La tabla siguiente contiene las nuevas características del lenguaje C# 3.0:

Característica

Descripción

Matrices y variables locales con tipo implícito

Cuando se utiliza con variables locales, la palabra clave var indica al compilador que deduzca el tipo de los elementos de variable o matriz en la expresión situada en la parte derecha de la instrucción de inicialización.

Inicializadores de objeto

Habilita la inicialización de objetos sin llamadas explícitas a un constructor.

Inicializadores de colección

Habilita la inicialización de colecciones con una lista de inicialización en lugar de llamadas concretas a Add u otro método.

Métodos de extensión

Extienda las clases existentes con métodos estáticos que puedan invocarse mediante la sintaxis de método de instancia.

Tipos anónimos

Habilita la creación inmediata de tipos estructurados sin nombre que se pueden agregar a colecciones y a los que se puede tener acceso utilizando var.

Expresiones lambda

Habilita expresiones insertadas con parámetros de entrada que se pueden enlazar a delegados o árboles de expresión. Vea también Funciones anónimas (Guía de programación de C#).

Palabras clave de consultas

Palabras clave que especifican cláusulas en una expresión de consulta:

  • Cláusulas from

  • Cláusula where (opcional)

  • Cláusulas de ordenación (opcional)

  • Cláusula join (opcional)

  • Cláusula select o group

  • Cláusula into (opcional)

Propiedades autoimplementadas

Habilita la declaración de propiedades utilizando la sintaxis simplificada.

Definiciones de métodos parciales

Ahora los tipos parciales pueden contener métodos parciales.

Compilador de C# 3.0

  • Modificadores del compilador /win32Manifest y /noWin32Manifest.
    Estos nuevos modificadores del compilador se utilizan para especificar niveles de ejecución solicitados para programas que se ejecutan en Windows Vista.

IDE de Visual C#

Característica

Descripción

Compatibilidad con múltiples versiones

Visual Studio 2008 permite especificar una versión de .NET Framework para el proyecto, .NET Framework 2.0, 3.0 ó 3.5. El destino de .NET Framework de una aplicación es la versión de .NET Framework requerida en un equipo para que la aplicación se ejecute en dicho equipo. Para obtener más información, consulte Especificar una versión concreta de .NET Framework.

Plantillas y tipos de proyecto nuevos

Se proporcionan varias plantillas de proyecto nuevas para Windows Presentation Foundation, Windows Communication Foundation y proyectos web. Para obtener más información, consulte Plantillas de proyecto en las ediciones de Visual C# y Plantillas de proyectos predeterminadas en Visual Studio.

Compatibilidad con IntelliSense para C# 3.0

El editor de código de Visual C# proporciona finalización de instrucciones e información rápida para ofrecer compatibilidad con las siguientes construcciones de lenguaje nuevas en C# 3.0:

  • Variables locales con tipo implícito

  • Expresiones de consulta

  • Métodos de extensión

  • Inicializadores de objeto/colección

  • Tipos anónimos

  • Expresiones lambda

  • Métodos Partial

Para obtener más información, vea IntelliSense para Visual C#.

Compatibilidad de refactorización para C# 3.0

Las características de refactorización, Cambiar nombre, Cambiar firma, Extraer método y Promocionar variable local, se han actualizado para ofrecer compatibilidad con las siguientes construcciones de lenguaje nuevas:

  • Expresiones de consulta

  • Métodos de extensión

  • Expresiones lambda

Además, la refactorización proporciona nuevas opciones y advertencias para ayudar a evitar las consecuencias imprevistas de una acción de refactorización. Para obtener más información, consulte Refactorización.

Formato del código

El editor de código admite opciones de formato para varias construcciones de lenguaje C# 3.0 nuevas, incluidas las expresiones de consulta. Para obtener más información, consulte Formato, C#, Editor de texto, Opciones (Cuadro de diálogo).

Organizar instrucciones Using

El editor de código de Visual C# ofrece una forma sencilla de ordenar declaraciones using y extern y quitar las que no se utilicen.

Vea también

Otros recursos

Language-Integrated Query (LINQ)

Is C# becoming a functional language?

Nuevas clases de biblioteca en .NET Framework 3.5

Historial de cambios

Fecha

Historial

Motivo

Julio de 2008

Añadida sección sobre Visual C# 2008 Service Pack 1.

Cambio de características de SP1.