¿Puedes usar parámetros opcionales en la orientación por código .NET 3.5?

Estoy buscando escribir una biblioteca que use la nueva característica de parámetros opcionales de C # 4.0, pero quiero apuntarla a la versión 3.5 del framework. es posible?

¿Los parámetros son azúcar sintáctico opcional de la misma manera que los métodos de extensión?

Con VS2010 RC, pude crear una aplicación .NET 3.5 que usa parámetros opcionales en C #.

Entonces, sí, todo se trata del azúcar sintáctico.

VS 2010 admite parámetros opcionales en C # para soluciones .NET 3.5. Una advertencia, sin embargo, es que el comstackdor de línea de comandos informará los errores.

Por lo tanto, si tiene comstackciones automatizadas en ejecución, – usando NANT u otra cosa utilizando el comstackdor de línea de comandos – sus comstackciones fallarán.

Al igual que Jon Skeet que recibía el parámetro opcional “Característica”, no se puede usar porque no forma parte de la especificación de lenguaje de 3.0 C # “. Sin embargo, en la versión RTM de Visual Studio, puede seleccionar la Versión de idioma como “predeterminada” en Propiedades del proyecto-> Construir-> Avanzado. Eso lo hizo funcionar para mí.

Puede usar parámetros opcionales y nombrados en un marco de trabajo específico de una versión anterior siempre que los ensamblados se construyan dentro de un entorno de desarrollo para v4 (fe VS2010). Pero debe tener en cuenta que en tiempo de ejecución se comstackn o publican sitios web, en este caso se utilizará el comstackdor del marco específico. Y debido a que los comstackdores de los marcos anteriores no entienden la syntax de los params opcionales y nombrados, se generarán errores en el comstackdor.

Vaya a las propiedades del proyecto -> Crear pestaña -> haga clic en el botón ‘Avanzado’ -> configure la versión del idioma en ‘predeterminado’ -> guardar -> ser feliz;)

No tengo VS2010 instalado aquí para verificarlo, pero creo que esto sería una característica puramente de idioma y, por lo tanto, debería poder utilizarse independientemente del marco al que se dirija.

Editar: Al mirar este enlace (y algunos otros), parece que los parámetros opcionales comstackn los argumentos del método con un atributo [opt] en el il. No sé si este parámetro existía en versiones anteriores del clr, pero aún supongo que sí.

VB.NET tiene parámetros opcionales si desea usar parámetros opcionales en .NET 3.5.