2011-04-21 82 views
12

im conseguir este error al intentar conectar una base de datos MySQL a un editor, aquí está el código detrás:Error: "Rellenar: la propiedad SelectCommand.Connection no se ha inicializado".

protected void Button1_Click(object sender, EventArgs e) 
{ 
    DataTable dt = new DataTable(); 
    MySqlConnection conn = new MySqlConnection(@"connection string");//tested and working 
    conn.Open(); 

    MySqlCommand cmd = new MySqlCommand("SELECT tes FROM ins"); 
    MySqlDataAdapter da = new MySqlDataAdapter(cmd); 

    da.SelectCommand = cmd; 
    da.Fill(dt); 


    if (dt.Rows.Count > 0) 
    { 
     Editor1.Content = dt.Rows[0]["tes"].ToString(); 
    } 
    conn.Close(); 

} 

y aquí está el código de la página aspx:

<body> 
<form id="form1" runat="server"> 


<cc1:Editor ID="Editor1" runat="server" Height="400px" Visible="true" /> 

<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> 
</form> 

lo estoy haciendo mal, gracias de antemano.

uso asp.net 3.5.

Respuesta

23

Cambie la línea

MySqlCommand cmd = new MySqlCommand("SELECT tes FROM ins"); 

Para

MySqlCommand cmd = new MySqlCommand("SELECT tes FROM ins", conn); 

y debería funcionar.

Como alternativa, asigne conn a la propiedad cmd.Connection.

El problema con el código es que nunca se asigna una conexión al comando, de ahí el error que indica que la conexión no se ha inicializado.

+0

gracias, no puede creer que haya olvidé eso – Wahtever

0

También tengo este problema. después de buscar el problema encontró que el objeto de conexión que tengo proporcionar SqlDataAdapter no se Inicializar por lo que la conexión pasada como nulo

1

Prueba esto

MySqlCommand cmd = new MySqlCommand("SELECT tes FROM ins",conn); 

o

MySqlCommand cmd = new MySqlCommand("SELECT tes FROM ins"); 
cmd.Connection=conn; 
Cuestiones relacionadas