Cadena de Conexión a sql en c#

Estoy tratando de correr un programa que descargué gratis pero al estar en C#, no le entiendo mucho. Mi problema es que la cadena de conexión está en blanco "" y la cadena que usualmente se usaría en vb.net no funciona en este lenguaje. El código de la clase de conexión es el siguiente:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;

namespace Restaurant
{
class DatabaseClass

{

private string _connectionString = "";

public DatabaseClass(string connectionString)
{
_connectionString = connectionString;
}

/// <summary>
/// Check the connection with the specified connection string
/// </summary>
/// <returns>Returns True if the connection can be open else it returns False</returns>
public bool CheckConnection()
{
SqlConnection con = new SqlConnection(_connectionString);
try
{
con.Open();
con.Close();
return true;
}
catch (SqlException ex)
{
return false;
}
}
}
}

Ahora bien,, no logro conectarlo a Sql..

1 respuesta

Respuesta
1

Pues precisamente falta la cadena de conexión, "googlealo", solo pon Connection Strings SQL y sale una página con las cadenas de conexión, solo la tienes que adaptar a tu programa

Ya lo googleé, sin embargo, intenté con la cadena de conexión que utilizo en vb.net "Data Source=server; Initial Catalog=BaseDeDatos; Persist Security Info=True;User ID=sa;Password=aA1", no funciona, incluso con algunos nombre distintos como "Server=Servidor;Database=BaseDatos;User;Password" y tampoco funciona, en todas dice "Conection Failed". por ello busco el apoyo de alguien que tenga experiencia en esto.

"Data Source=server; Initial Catalog=BaseDeDatos; Persist Security Info=True;User ID=sa;Password=aA1"

¿Tu computadora se llama server? ¿Además debes poner el nombre de la instancia y tu base de datos se llama BaseDeDatos? ¿O si cambiaste esos datos por los correctos? Generalmente se pone así como "PlaceHolder" y uno debe cambiar esos datos por los reales.

Je je por supuesto, la cadena de conexión completa sería:

"Data Source=Localhost; Initial Catalog=Restaurant; Persist Security Info=True;User ID=sa;Password=aA1"

También intenté con esta:

"Data Source=Alexis\SQL; Initial Catalog=Restaurant; Persist Security Info=True;User ID=sa;Password=aA1"

Pero en este caso particular, da error en la contradiagonal \

En el segundo caso es porque en C# la diagonal debe tratarse de cierta forma si no la marca como error, intenta poniendo @ antes de toda la cadena de conexión, ¿entonces tu computadora se llama Alexis y la instancia de SQL Server se llama SQL?

Intenté así:

"@data source=Localhost;Initial Catalog=Restaurant;User id=sa;Password=aA1"

y así:

@"data source=Localhost;Initial Catalog=Restaurant;User id=sa;Password=aA1"

y tampoco funcionó.... 

Con lo de la instancia sql, así es.. esos son los nombres, aunque quisiera que funcionara como Localhost para evitar nombres de instancia.

Mmmm la segunda opción sería la correcta, lo que se me ocurre es que agregues un nuevo item LinqToSQL o LinqToClasses no recuerdo bien como se llama o un DataSource, y ves como generó la cadena de conexión en las propiedades.

Si te interesa, puedo enviarte el proyecto entero, para que lo veas, está muy bonito el programa, solo te rogaría que me lo reenviaras si lo logras conectar.. o al menos la cadena de conexión XD.. cuál es tu email ? 

Ok, mándalo a [email protected]

Ya te mandé la respuesta a tu email, la cadena de conexión debe ser usando AttachDbFilename.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas