En C# para inicializar una cadena: string.Empty, String.Empty o "" — ¿cuál es mejor?
¡Hola a todos! Acabo de empezar a aprender C# y me encontré con una pregunta que me confunde mucho. Cuando necesito declarar una cadena vacía, veo en diferentes ejemplos de código tres opciones:
string a = "";
string b = string.Empty;
string c = String.Empty;
Todas funcionan igual y crean una cadena vacía. Pero, ¿cuál se considera correcta desde el punto de vista del estilo, rendimiento y legibilidad? He oído que "" puede crear un nuevo objeto cada vez, mientras que string.Empty es una constante. ¿Es esto cierto? ¿O son solo prejuicios?
También me interesa saber si hay diferencia entre string.Empty y String.Empty. Después de todo, string es un alias para System.String. ¿Entonces son equivalentes? Pero si es así, ¿por qué la comunidad de C# usa más a menudo string.Empty?
Y por último: ¿afecta la elección al rendimiento en bucles o al asignar con frecuencia? Por ejemplo, si en un bucle de