Avatar ·

Cómo escapar llaves en una cadena de formato .NET (C#)

¡Hola a todos! Acabo de empezar a aprender C# y me encontré con un problema al formatear cadenas.

Necesito mostrar una cadena que contenga llaves {}, por ejemplo: "El valor es {42}". Estoy usando el método String.Format o interpolación de cadenas, pero el compilador o el runtime interpretan que las llaves son parte de la sintaxis de sustitución.

Aquí hay un ejemplo de código que no funciona:

int number = 42;
string result = String.Format("El valor es {number}"); // Error: la cadena de entrada tenía un formato incorrecto
Console.WriteLine(result);

O con interpolación:

int number = 42;
string result = $"El valor es {number}"; // Muestra "El valor es 42", pero necesito "El valor es {42}"
Console.WriteLine(result);

En el segundo caso, C# sustituye el valor de la variable, pero necesito que las llaves se mantengan como caracteres normales. ¿Cómo escapar correctamente las llaves para que en