Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
El operador de coalescencia nula ? evalúa el operando derecho y devuelve su resultado si es una referencia no nula; en caso contrario, devuelve el valor de su operando izquierdo. Si el operando de la izquierda evalúa un tipo de valor no anulable, el operador condicional nulo (??) no evalúa su operando en la mano derecha. El operador de asignación ??= que es de coalescencia nula asigna el valor de su operando derecho a su operando izquierdo sólo cuando el operando izquierdo se evalúa a un valor de tipo anulable. Si el operando del lado izquierdo se evalúa como un valor no nulo, el operador de asignación de coalescencia de nulos (??=) no evalúa su operando derecho. El operador de fusión nulo es similar al operador ternario.
Es cierto que en C# el operador de coalescencia nula (??) es un operador binario. Un operador que actúa sobre dos operandos se denomina operador binario. Cuando se utiliza el operador de coalescencia de nulos, se requieren dos operandos, y el operador evalúa cada operando para determinar el resultado. A continuación vamos a ver el uso de los operadores null coalescing y null conditional en C#.
Los valores nulos en C# se gestionan por defecto mediante el método operador de coalescencia nula (??)que es la idea de coalescencia que se utiliza para gestionar dichos valores cuando se trata con tipos anulables o expresiones que pueden dar como resultado null.
A continuación se muestra la sintaxis del operador de coalescencia nula:
result = expression1 ?? expression2;
result = expression1 ?? expression2;
result = If(expression1, expression2)
expresión1: Esta expresión puede producir un valor nulo.
expresión2: Si expresión1 es nula, éste es el valor por defecto o la expresión sustituta que se utilizará.
resultado: La variable que contiene el resultado de las operaciones de coalescencia.
El operador null-coalescing ofrece un método condensado para asignar un valor por defecto cuando se trabaja con tipos anulables, que es su principal objetivo para racionalizar el código y manejar eficientemente los datos nulos.
Se mejora la legibilidad del código indicando explícitamente que se proporcionará un valor por defecto si se devuelve null.
Es fundamental asegurarse de que los tipos de expresión que se comparan coinciden o son compatibles antes de utilizar el operador de coalescencia nula.
Aunque útil, el uso excesivo del operador puede dificultar la comprensión del código. Cuando mejore la claridad del código, utilícelo con moderación.
Cuando se trabaja con tipos anulables o escenarios que requieren valores por defecto, el operador de coalescencia de nulos (??) en C# es una herramienta eficaz para gestionar valores nulos y puede ayudar a escribir código más sucinto y comprensible.
El operador que coalesce nulos ? posee las siguientes cualidades relacionadas con el tipo:
El tipo de resultado del operador de coalescencia de nulos es el mismo que el de estos operandos si las expresiones 1 y 2 tienen el mismo tipo, como se muestra en el código siguiente.
int? Value = null;
int result = Value ?? 10;
int? Value = null;
int result = Value ?? 10;
Dim Value? As Integer = Nothing
Dim result As Integer = If(Value, 10)
El tipo de resultado es el tipo al que se pueden convertir implícitamente ambas expresiones si las expresiones 1 y 2 tienen tipos distintos pero una se puede convertir implícitamente en la otra.
double? value= null;
int result = (int)(value ?? 5.5);
double? value= null;
int result = (int)(value ?? 5.5);
Imports System
Dim value? As Double= Nothing
Dim result As Integer = CInt(Math.Truncate(If(value, 5.5)))
Si los tipos de las expresiones 1 y 2 no pueden convertirse implícitamente, el tipo del resultado se elegirá siguiendo las reglas de promoción de tipos de C#.
int? value= null;
long result = value ?? 100L;
int? value= null;
long result = value ?? 100L;
Dim value? As Integer= Nothing
Dim result As Long = If(value, 100L)
En consecuencia, los tipos de los operandos implicados y las reglas de conversión de tipos de C# dictan el tipo de variable o expresión que contiene el resultado del operador de coalescencia de nulos (??). Para garantizar el manejo correcto de tipos y valores al emplear el operador de coalescencia de nulos, es crucial tener en cuenta la compatibilidad y las probables conversiones de tipos.
Adquirir el IronPDF biblioteca; el próximo parche lo requiere. Para ello, introduzca el siguiente código en el gestor de paquetes:
Install-Package IronPdf
También puede utilizar el gestor de paquetes NuGet para buscar el paquete "IronPDF". Puede elegir y descargar el paquete necesario de esta lista de todos los paquetes NuGet relacionados con IronPDF.
Para crear y trabajar con documentos PDF se utiliza una biblioteca de C# llamada IronPDF. La biblioteca ofrece algunas funciones para trabajar con PDF, como el formateo, el tratamiento de textos y la gestión de imágenes. La "coalescencia nula" no es un método ni una función exclusiva de IronPDF; se trata más bien de una característica del lenguaje y no de una operación específica de la biblioteca.
Sin embargo, si está trabajando con IronPDF o cualquier otra biblioteca en su código C#, puede utilizar los operadores de coalescencia nula (??) que proporciona el lenguaje C#.
Para manejar situaciones nulas o proporcionar valores por defecto, por ejemplo, mientras se trabaja con objetos IronPDF, tipos de valores anulables o propiedades que pueden devolver null, puede utilizar el operador null-coalescing.
El siguiente ejemplo muestra cómo puede utilizarse el operador de coalescencia nula con IronPDF:
using IronPdf;
using IronPdf.Pages;
namespace ConsoleApp1
{
internal class Program
{
static void Main(string [] args)
{
int? x = null;
var outputstr = $@"square of <b>{x}</b> is <b>{ Math.Sqrt(x??30)}</b>";
var pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr);
pdfcreate.SaveAs("demo.pdf");
Console.ReadKey();
}
}
}
using IronPdf;
using IronPdf.Pages;
namespace ConsoleApp1
{
internal class Program
{
static void Main(string [] args)
{
int? x = null;
var outputstr = $@"square of <b>{x}</b> is <b>{ Math.Sqrt(x??30)}</b>";
var pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr);
pdfcreate.SaveAs("demo.pdf");
Console.ReadKey();
}
}
}
Imports IronPdf
Imports IronPdf.Pages
Namespace ConsoleApp1
Friend Class Program
Shared Sub Main(ByVal args() As String)
Dim x? As Integer = Nothing
Dim outputstr = $"square of <b>{x}</b> is <b>{Math.Sqrt(If(x, 30))}</b>"
Dim pdfcreate = ChromePdfRenderer.StaticRenderHtmlAsPdf(outputstr)
pdfcreate.SaveAs("demo.pdf")
Console.ReadKey()
End Sub
End Class
End Namespace
Recuerde que IronPDF (o cualquier biblioteca) no proporciona una función o método especial para gestionar los operadores condicionales de valores nulos; más bien, el uso del operador null-coalescing se basa en características y conceptos generales del lenguaje C# para el manejo de un operador null condicional. Para saber más sobre IronPDF, haga clic en aquí.
Salida:
En resumen, el operador de coalescencia de nulos de C# (??) es una función muy útil que facilita el manejo de valores nulos en expresiones y asignaciones. Este operador simplifica el código proporcionando a los desarrolladores una forma clara de manejar los escenarios en los que un valor podría ser nulo. Esto permite a los desarrolladores especificar valores por defecto o llevar a cabo una lógica alternativa con facilidad. Su adaptabilidad hace que el código sea más ágil y eficaz, simplificando las pruebas nulas y mejorando la legibilidad.
IronPDF ofrece una licencia perpetua, opciones de actualización, un año de mantenimiento del software y una garantía de devolución del dinero de treinta días, todo incluido en el paquete $749 Lite. Los usuarios disponen de treinta días para evaluar el producto en entornos de aplicación reales durante el periodo de prueba con marca de agua. Haga clic en el botón enlace para obtener más información sobre el coste, la licencia y la versión de prueba de IronPDF. Para saber más sobre los productos de Iron Software, consulte aquí.
9 productos API .NET para sus documentos de oficina