recortar - Variables C#en cadenas
string c# ejemplos (3)
En C # 6 puedes usar la interpolación de cuerdas :
string name = "John";
string result = $"Hello {name}";
El resaltado de sintaxis para esto en Visual Studio lo hace altamente legible y se comprueban todos los tokens.
En PHP puedo hacer lo siguiente:
$name = ''John'';
$var = "Hello {$name}"; // => Hello John
¿Hay una construcción de lenguaje similar en C #?
Sé que hay String.Format();
pero quiero saber si se puede hacer sin llamar a una función / método en la cadena.
Esta funcionalidad no está integrada en C #.
La forma recomendada de hacerlo sería con String.Format
:
string name = "Scott";
string output = String.Format("Hello {0}", name);
Sin embargo, escribí una pequeña biblioteca de código abierto llamada SmartFormat que amplía String.Format
para que pueda usar marcadores de posición con nombre (a través de la reflexión). Entonces, podrías hacer:
string name = "Scott";
string output = Smart.Format("Hello {name}", new{name}); // Results in "Hello Scott".
¡Espero que te guste!
Hasta C # 5 (-VS2013) tienes que llamar a una función / método para ello. Ya sea una función "normal" como String.Format
o una sobrecarga del operador +.
string str = "Hello " + name; // This calls an overload of operator +.
En C # 6 (VS2015) se ha introducido la interpolación de cadenas (como se describe en otras respuestas).