c# - studio - sql server azure connect
¿Cómo me conecto a un archivo de base de datos MDF? (7)
Estoy experimentando conectando una aplicación C # a una base de datos MDF por primera vez, y necesito un poco de ayuda.
Hice un pequeño archivo de base de datos MDF en Visual Studio 2010, luego creé otro proyecto e importé el archivo en el proyecto mismo.
No estoy tratando de conectarme al archivo MDF a través del código. Aquí el código que estoy usando:
namespace DBtestApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
System.Data.SqlClient.SqlConnection con;
private void Form1_Load(object sender, EventArgs e)
{
con = new System.Data.SqlClient.SqlConnection();
con.ConnectionString = "DataSource=.//SQLEXPRESS; AttachDbFilename =SampleDatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
con.Open();
MessageBox.Show("Connection opened");
con.Close();
MessageBox.Show("Connection closed");
}
}
}
Cuando ejecuto la aplicación, obtengo una excepción en la línea donde defino la cadena de conexión, y la excepción tiene este mensaje en la parte superior de la pila:
System.ArgumentException: Keyword not supported: ''datasource''.
Alguien me puede apuntar en la dirección correcta ?
Server=./SQLExpress;AttachDbFilename=c:/mydbfile.mdf;Database=dbname; Trusted_Connection=Yes;
Agregar espacio entre el Data Source
con.ConnectionString = @"Data Source=./SQLEXPRESS;
AttachDbFilename=c:/folder/SampleDatabase.mdf;
Integrated Security=True;
Connect Timeout=30;
User Instance=True";
string sqlCon = @"Data Source=./SQLEXPRESS;" +
@"AttachDbFilename=|DataDirectory|/SampleDB.mdf;
Integrated Security=True;
Connect Timeout=30;
User Instance=True";
SqlConnection Con = new SqlConnection(sqlCon);
El archivo debe tener | DataDirectory | que realmente enlaza con "directorio de proyecto actual / App_Data /" o "directorio de proyecto actual" y obtiene el archivo .mdf ..... Coloque el .mdf en cualquiera de estos lugares y debería funcionar en visual studio 2010. Y cuando use la aplicación independiente en el sistema de producción, luego la ruta actual donde está el archivo ejecutable, debe tener el archivo .mdf.
SqlConnection con = new SqlConnection(@"Data Source=./SQLEXPRESS;AttachDbFilename=E:/Samples/MyApp/C#/bin/Debug/Login.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
esto está funcionando para mí ... ¿Hay alguna manera de acortar el camino? me gusta
SqlConnection con = new SqlConnection(@"Data Source=./SQLEXPRESS;AttachDbFilename=/bin/Debug/Login.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
Vaya al explorador del servidor> Su base de datos> Haga clic con el botón derecho> Propiedades> ConnectionString y copie la cadena de conexión y pase el código copied al stringgstring :)
Para Visual Studio 2015, la cadena de conexión es:
"Data Source=(localdb)/MSSQLLocalDB;AttachDbFilename=|DataDirectory|Database1.mdf;Integrated Security=True"
Solución alternativa, donde puede tener la base de datos en la carpeta que desea dentro de la solución. Eso funcionó para mí:
.ConnectionString(@"Data Source=LocalDB)/MSSQLLocalDB;
AttachDbFilename="+AppDomain.CurrentDomain.BaseDirectory+"Folder1//Folder2//SampleDatabase.mdf" + ";
Integrated Security=True;")