net vb.net null-coalescing-operator

¿VB.NET nulo coalescente operador?



summary documentation c# (4)

Posibles duplicados:
Operador Coalesce y operador Conditional en VB.NET
¿Hay un equivalente de VB.NET para C #? ¿operador?

¿Hay un VB.NET incorporado equivalente al operador coalescente C # nulo?



No. Use GetValueOrDefault ; es por eso que está ahí!


Sí, hay, siempre que use VB 9 o posterior (incluido con Visual Studio 2008).

Puede usar la versión del operador If sobrecargado para aceptar solo dos argumentos:

Dim myVar? As Integer = Nothing Console.WriteLine(If(myVar, 7))

Puede encontrar más información here en una publicación de blog del equipo de VB.NET.

(Sí, este es un operador , aunque parezca una función. Se compilará hasta el mismo IL como el operador nulo de coalescencia "correcto" en C #).

Ejemplo

Dim b As Boolean? Console.WriteLine("{0}.", If(b, "this is expected when b is nothing")) ''output: this is expected when b is nothing. b = False Console.WriteLine("{0}.", If(b, "this is unexpected when b is false")) ''output: False. b = True Console.WriteLine("{0}.", If(b, "this is unexpected when b is true")) ''output: True.