Cadenas de conexión (ADO.NET)
Actualización: November 2007
.NET Framework 2.0 incorporó nuevas capacidades para trabajar con cadenas de conexión, incluida la introducción de nuevas palabras clave en las clases generadoras de cadenas de conexión, que facilitan la creación de cadenas de conexión válidas en tiempo de ejecución.
Una cadena de conexión contiene información de inicialización que se transfiere como un parámetro desde un proveedor de datos a un origen de datos. La sintaxis depende del proveedor de datos y la cadena de conexión se analiza durante el intento para abrir una conexión. Los errores de sintaxis generan una excepción en tiempo de ejecución, pero otros errores sólo se producen después de que el origen de datos recibe la información de conexión. Una vez validada la cadena de conexión, el origen de datos aplica las opciones especificadas en ella y abre la conexión.
El formato de una cadena de conexión es una lista de pares de parámetros de clave y valor delimitados por punto y coma.
keyword1=value; keyword2=value;
Las palabras clave no distinguen entre mayúsculas y minúsculas y los espacios entre los pares de clave-valor se omiten. Sin embargo, los valores pueden distinguir entre mayúsculas y minúsculas, en función del origen de datos. Los valores que contengan un punto y coma, caracteres de comilla sencilla o caracteres de comilla doble deben colocarse entre comillas dobles.
La sintaxis válida de cadena de conexión depende del proveedor y ha evolucionado a lo largo de los años desde las primeras API como ODBC. El proveedor de datos de .NET Framework para SQL Server (SqlClient) incorpora muchos elementos de la sintaxis antigua y, por lo general, es más flexible con la sintaxis común de cadena de conexión. Con frecuencia existen sinónimos igualmente válidos para los elementos de sintaxis de la cadena de conexión, pero algunos errores de sintaxis y ortografía pueden generar problemas. Por ejemplo, "Integrated Security=true" es válido, en tanto que "IntegratedSecurity=true" genera un error. Además, las cadenas de conexión construidas en tiempo de ejecución a partir de entrada de usuario no validada pueden dar lugar a ataques de inyección de cadenas, lo que pone en peligro la seguridad en el origen de datos.
Para solucionar estos problemas, ADO.NET 2.0 incorporó nuevos generadores de cadenas de conexión para cada proveedor de datos de .NET Framework. Las palabras clave se exponen como propiedades, lo que permite validar la sintaxis de la cadena de conexión antes de su envío al origen de datos.
En esta sección
Generadores de cadenas de conexión (ADO.NET)
Muestra cómo usar las clases ConnectionStringBuilder para construir cadenas de conexión válidas en tiempo de ejecución.Cadenas de conexión y archivos de configuración (ADO.NET)
Muestra cómo almacenar y recuperar cadenas de conexión en archivos de configuración.Sintaxis de cadena de conexión (ADO.NET)
Describe cómo configurar cadenas de conexión específicas de proveedor para SqlClient, OracleClient, OleDb y Odbc.Proteger la información de conexión (ADO.NET)
Muestra técnicas de protección de la información utilizada para conectarse a un origen de datos.