sábado, 28 de junio de 2008

Tratamiento de Cadenas en C#

El lenguaje C#, al ser un derivado del lenguaje C, tiene ciertos caracteres que tienen un significado particular, y al ser incluidos en una cadena de texto deben ir precedidos por el caracter de escape ("\").
Por ejemplo: para escribir "C:\" en una cadena deberemos escribir "C:\\".
Pero, qué pasa si queremos escribir una cadena como la cadena de conexión del ejemplo de Conexión a la base de Datos de Diego?
Puede resultar muy engorroso tener que escribir "\\" por cada subdirectorio. Lo que además resulta complicado de leer. (Ni hablar si se está escribiendo una expresión regular!!!)
Para esto existe una solución!!!
Se debe anteponer a la cadena el símbolo "@", para que la cadena sea tomada tal como está (internamente el compilador tendrá que poner todos los caracteres de escape que necesite).
Ejemplo:
La cadena de conexion original tenía lo siguiente:

string strConexion = "Data Source=.\\SQLEXPRESS;AttachDbFilename=E:\\sql\\MSSQL.1\\MSSQL\\Data\\Celula.mdf;Inte...";

Para que quede más legible la podemos reescribir de la siguiente manera:

string strConexion = @"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\sql\MSSQL.1\MSSQL\Data\Celula.mdf;Inte...";

1 comentario:

Diego dijo...

Espectacular! Muy bien che esa no me la sabia y es mucho mejor hacer eso!!!