Tengo un problema y no se como solucionar
Hago una aplicación utilizando C#
y sql server
, todo bien en la conexión, consultas e ingresos de datos, pero cuando ingreso datos en una tabla me despliega el mensaje:
"Referencia a objeto no establecida como instancia de un objeto"
Mi código es algo así (otras funciones de consulta están bien, pero no se q pasa con esta:)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Configuration;
namespace sistemita
{
public partial class registrar : Form
{
private object cnn;
public SqlConnection Conectar { get; private set; }
public registrar()
{
InitializeComponent();
}
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
TabControlPrincipal.SelectTab(0);
}
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
TabControlPrincipal.SelectTab(1);
}
private void radioButton3_CheckedChanged(object sender, EventArgs e)
{
TabControlPrincipal.SelectTab(2);
}
private void radioButton4_CheckedChanged_1(object sender, EventArgs e)
{
txtcarnet.Enabled = radioButton3.Checked;
txtsocio.Enabled = radioButton4.Checked;
}
//para llenar el combobox de alergia
public void llenarAlergia()
{
SqlConnection cnn = Conexion();
cnn.Open();
try
{
SqlCommand comando = new SqlCommand("select * from bool", cnn);
SqlDataAdapter da = new SqlDataAdapter(comando);
DataTable dt = new DataTable("suplidor");
da.Fill(dt);
cbalergi.DataSource = dt;
cbalergi.DisplayMember = "bool";
cbalergi.ValueMember = "bool_id";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
cnn.Close();
}
private SqlConnection Conexion()
{
throw new NotImplementedException();
}
//para llenar el combobox de enfermedad
public void llenarEnfermedad()
{
SqlConnection cnn = Conectar;
cnn.Open();
try
{
SqlCommand comando = new SqlCommand("select * from bool", cnn);
SqlDataAdapter da = new SqlDataAdapter(comando);
DataTable dt = new DataTable("suplidor");
da.Fill(dt);
cbenfemedad.DataSource = dt;
cbenfemedad.DisplayMember = "bool";
cbenfemedad.ValueMember = "bool_id";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
cnn.Close();
}
private void cbalergi_SelectedIndexChanged(object sender, EventArgs e)
{
if (cbalergi.SelectedIndex == 1)
{
txtenf.Enabled = true;
}
else
{
txtenf.Enabled = false;
}
}
private void cbenfemedad_SelectedIndexChanged(object sender, EventArgs e)
{
if (cbenfemedad.SelectedIndex == 2)
{
txtalergia.Enabled = true;
}
else
{
txtalergia.Enabled = false;
}
}
private void enviar()
{
if (string.IsNullOrEmpty(txtcampista.Text) ||
string.IsNullOrEmpty(txtgrupo.Text) ||
string.IsNullOrEmpty(txtnombre.Text) ||
string.IsNullOrEmpty(txtfrn.Text) ||
string.IsNullOrEmpty(txtedad.Text) ||
string.IsNullOrEmpty(txting.Text) ||
string.IsNullOrEmpty(txtsali.Text) ||
string.IsNullOrEmpty(txtnombre.Text) ||
string.IsNullOrEmpty(txtceleme.Text)
)
{
MessageBox.Show("Debe llenar todos los campos");
}
else
{
SqlConnection cnn = Conectar;
try
{
cnn.Open();
SqlCommand comando = new SqlCommand("INSERT INTO cp VALUES (@codigo_camp, @grupo, @nombre_n," +
"@fe_naci, @edad, @socio, @no_carnet, @recomendacion, @fecha_ing, @fecha_sali," +
"@sem1, @sem2, @sem3, @sem4, @sem5, @sem6, @sem7,@alergia, @dalergia, @enfermedad," +
"@denfermedad, @dpastilla, @observaciones, @nombre_em, @cel_emer)", cnn);
comando.Parameters.Add("@codigo_camp", System.Data.SqlDbType.Int);
comando.Parameters.Add("@grupo", System.Data.SqlDbType.Int);
comando.Parameters.Add("@nombre_n", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@fe_naci", System.Data.SqlDbType.Date);
comando.Parameters.Add("@edad", System.Data.SqlDbType.Int);
comando.Parameters.Add("@socio", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@no_carnet", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@recomendacion", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@fecha_ing", System.Data.SqlDbType.Date);
comando.Parameters.Add("@fecha_sali", System.Data.SqlDbType.Date);
comando.Parameters.Add("@sem1", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@sem2", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@sem3", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@sem4", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@sem5", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@sem6", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@sem7", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@alergia", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@dalergia", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@enfermedad", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@denfermedad", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@dpastilla", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@observaciones", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@nombre_em", System.Data.SqlDbType.VarChar);
comando.Parameters.Add("@cel_emer", System.Data.SqlDbType.Int);
comando.Parameters["@codigo_camp"].Value = txtcampista.Text;
comando.Parameters["@grupo"].Value = txtgrupo.Text;
comando.Parameters["@nombre_n"].Value = txtnombre.Text;
comando.Parameters["@fe_naci"].Value = txtfrn.Value.Date;
comando.Parameters["@edad"].Value = txtedad.Text;
comando.Parameters["@no_carnet"].Value = txtcarnet.Text;
comando.Parameters["@recomendacion"].Value = cbs1.Text;
comando.Parameters["@fecha_ing"].Value = txting.Value.Date;
comando.Parameters["@fecha_sali"].Value = txtsali.Value.Date;
comando.Parameters["@sem1"].Value = cbs1.SelectedValue;
comando.Parameters["@sem2"].Value = cbs2.SelectedValue;
comando.Parameters["@sem3"].Value = cbs3.SelectedValue;
comando.Parameters["@sem4"].Value = cbs4.SelectedValue;
comando.Parameters["@sem5"].Value = cbs5.SelectedValue;
comando.Parameters["@sem6"].Value = cbs6.SelectedValue;
comando.Parameters["@sem7"].Value = cbs7.SelectedValue;
comando.Parameters["@alergia"].Value = cbalergi.SelectedValue;
comando.Parameters["@Dalergia"].Value = txtalergia.Text;
comando.Parameters["@enfermedad"].Value = cbenfemedad.SelectedValue;
comando.Parameters["@Denfermedad"].Value = txtenf.Text;
comando.Parameters["@dpastilla"].Value = txtpastilla.Text;
comando.Parameters["@nombre_em"].Value = txtalergia.Text;
comando.Parameters["@cel_emer"].Value = txtalergia.Text;
comando.ExecuteNonQuery();
MessageBox.Show("Regsitro guardado con exito");
txtcampista.Text = "";
txtgrupo.Text = "";
txtnombre.Text = "";
txtedad.Text = "";
txtcarnet.Text = "";
txtsocio.Text = "";
txtalergia.Text = "";
txtemerge.Text = "";
txtpastilla.Text = "";
txtobservaciones.Text = "";
txtemerge.Text = "";
txtceleme.Text = "";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
cnn.Close();
}
}
private void gdato_Click_1(object sender, EventArgs e)
{
enviar();
}
}
}