[ Foro de C# ]

error con DataRow en C#

25-Sep-2015 23:58
Jose Manuel
1 Respuestas

me sale error 'System.Data.DataRow' is a 'type ' but is used like a 'variable', cuando quiero correr el proyecto y se queda marcado la palabra datarow y por ende la variable "fila" arrastra el error y no puedo hacer la verificacion del login, ademas tengo una base de datos en un disco: "E:\jam\abc\BDCATO.mdf", como hago referencia en el "new sqlconection, para que se conecte", les dejo el codigo ayudenme por favor!!!!


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;


namespace CATO2015
{
    public partial class Form_Login : Form
    {
        public Form_Login()
        {
            InitializeComponent();
        }

        private void label3_Click(object sender, EventArgs e)
        {

        }

        private void label1_Click(object sender, EventArgs e)
        {

        }

        private void btnsal_Click(object sender, EventArgs e)
        {
            this.Dispose();
            this.Hide();
        }

        private void btning_Click(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection("Data Source=local host;database=BDCATO;Integrated Security=True");
            try
            {
                SqlCommand cmd =new SqlCommand ("select codusu, pasusu from usuarios where codusu='"+text_usuario+"' and ='"+text_password+"' ",con);

                con.Open();
                cmd.ExecuteNonQuery();

                DataSet ds = new DataSet();
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                da.Fill(ds, "login");

                DataRow = fila;
                fila  = ds.Tables["Login"].Rows[0];

                if((text_usuario.Text==fila["codusu"].ToString()) || (text_password.Text==fila["pasusu"].ToString()))
                {
                    Form_Principal p= new Form_Principal();
                    p.Show();
                    this.Hide();
                }

            }
            catch { }
            finally
            {
                con.Close();
            }
        }
        private void Form_Login_Load(object sender, EventArgs e)
        {
        }
    }
}


mi correo es [Censurado], GRACIAS


09-Oct-2015 11:59
Nacho Cabanes (+84)

Siento el retraso en contestar, exceso de trabajo.

He censurado tu correo electrónico. Dejar tu dirección de correo en un foro que, como éste (y casi todos) está abierto a Google, es una fuente de spam terrible.

El mensaje de error es muy claro:

'System.Data.DataRow' is a 'type ' but is used like a 'variable

Si miras en qué línea te da ese mensaje de error (y que no indicas), tendrás todo resuelto. No puedo replicar tu proyecto en mi equipo para hacer pruebas, pero todo parece indicar que el problema está en la línea


DataRow = fila; 
fila  = ds.Tables["Login"].Rows[0]; 


que debería ser una declaración de variable en vez de una asignación:


DataRow fila; 
fila  = ds.Tables["Login"].Rows[0]; 


 






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)