none
system nullreferenceexception nesne başvurusu bir nesnenin örneğine ayarlanmadı c# Satır 66 Hatası Kayıt Esnasında Bu hatayı Alıyorum Yardımcı Olurmusunuz RRS feed

  • Soru

  •       private void simpleButton1_Click(object sender, EventArgs e)
            {
                if (!string.IsNullOrEmpty(textEdit1.Text) && !string.IsNullOrEmpty(textEdit2.Text))
                {
                    DialogResult dlg = MessageBox.Show("Müşteri Bilgileri Sisteme Kaydedilsin mi?", "Kaydetme Onay", MessageBoxButtons.YesNo, MessageBoxIcon.Information);

                    if (dlg == DialogResult.Yes)
                    {
                        SqlCommand comcuk = new SqlCommand("Insert Into Optik(TC_No,Ad_Soyad,Adres,Telefon,USagsph,USagcyl,USagxis,USolsph,USolcyl,USolaxis,YSagsph,YSagcyl,YSagaxis,YSolcyl,YSolsph,YSolaxis,Uzakgozlukmarka,Yakingozlukmarka,Fiyat,Tarih,Gozluk_Turu,Garanti_Suresi,Aciklama) values(@T,@AS,@AD,@C,@TK,@USG,@USH,@UCH,@USOL,@USOLSPH,@USCHH,@YSPH,@YCHH,@YSOL,@YSOLSPH,@YSOLCHH,@GM,@YM,@GT,@GF,@TT,@G,@A)", con);
                        comcuk.Parameters.AddWithValue("@T", textEdit1.Text);
                        comcuk.Parameters.AddWithValue("@AS", textEdit2.Text);
                        comcuk.Parameters.AddWithValue("@AD", textEdit3.Text);
                        comcuk.Parameters.AddWithValue("@C", textEdit4.Text);
                        comcuk.Parameters.AddWithValue("@TK", textEdit5.Text);
                        comcuk.Parameters.AddWithValue("@USG", textEdit6.Text);
                        comcuk.Parameters.AddWithValue("@USH", textEdit7.Text);
                        comcuk.Parameters.AddWithValue("@UCH", textEdit8.Text);
                        comcuk.Parameters.AddWithValue("@USOL", textEdit9.Text);
                        comcuk.Parameters.AddWithValue("@USOLSPH", textEdit10.Text);
                        comcuk.Parameters.AddWithValue("@USOLCHH", textEdit11.Text);
                        comcuk.Parameters.AddWithValue("@YSPH", textEdit12.Text);
                        comcuk.Parameters.AddWithValue("@YCHH", textEdit13.Text);
                        comcuk.Parameters.AddWithValue("@YSOL", textEdit14.Text);
                        comcuk.Parameters.AddWithValue("@YSOLSPH", textEdit15.Text);
                        comcuk.Parameters.AddWithValue("@YSOLCHH", textEdit16.Text);
                        comcuk.Parameters.AddWithValue("@GM", textEdit17.Text);
                        comcuk.Parameters.AddWithValue("@YM", textEdit18.Text);
                        comcuk.Parameters.AddWithValue("@GT", textEdit19.Text);
                        comcuk.Parameters.AddWithValue("@GF", textEdit20.Text);
                        comcuk.Parameters.AddWithValue("@TT", textEdit21.Text);
                        comcuk.Parameters.AddWithValue("@G", textEdit22.Text);
                        comcuk.Parameters.AddWithValue("@A", textEdit23.Text);
                        if (con.State == ConnectionState.Closed)
                        {
                            con.Open();
                        }
                        try
                        {
                            SqlCommand command = new SqlCommand(baglanti.BaglantiYolu);
                            command.Connection.Open();
                            command.ExecuteNonQuery();
                            {
                                GetirBilgi();

                            }
                        }
                        catch (Exception Ex)
                        {
                            MessageBox.Show(Ex.ToString());
                        }
                        finally
                        {
                            con.Close();
                        }
                    }
                    else
                    {
                        MessageBox.Show("Bilgi girişi iptal edildi", "Kayıt İptal", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                    }
                }
                else
                {
                    MessageBox.Show("Lütfen tüm alanları doldurunuz.", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                }
            }
    20 Şubat 2019 Çarşamba 13:53

Yanıtlar

  • Hala AddWithValue kullanıyorsunuz, butun degerler string mi? Onların icinde null olup da olmaması gereken oldugundan emin misiniz? Komutu tek satırda yazmissiniz, takip edilmesi çok güç. con ne belli degil.

    // ...
    if (dlg == DialogResult.Yes)
    {
    	using (SqlConnection con = new SqlConnection(baglanti.BaglantYolu))
    	using (SqlCommand comcuk = new SqlCommand(@"Insert Into Musteriler 
    		(TC_No,Ad_Soyad,Adres,Telefon,USagsph,
    		USagcyl,USagxis,USolsph,USolcyl,USolaxis,
    		YSagsph,YSagcyl,YSagaxis,YSolcyl,YSolsph,
    		YSolaxis,Uzakgozlukmarka,Yakingozlukmarka,
    		Fiyat,Tarih,Gozluk_Turu,Garanti_Suresi,Aciklama) 
    	values
    		(@T,@AS,@AD,@C,@TK,
    		@USG,@USH,@UCH,@USOL,@USOLSPH,
    		@USCHH,@YSPH,@YCHH,@YSOL,@YSOLSPH,
    		@YSOLCHH,@GM,@YM,
    		@GT,@GF,@TT,@G,@A)", con))
    	{
    		comcuk.Parameters.Add("@T", SqlDbType.VarChar).Value = textEdit1.Text;
    		// ...
    		try
    		{
    
    		con.Open();
    
    			if (comcuk.ExecuteNonQuery() > 0)
    			{
    				GetirBilgi();
    			}
    
    			con.Close();
    
    		}
    		catch (Exception Ex)
    		{
    			MessageBox.Show(Ex.ToString());
    		}
    		finally
    		{
    		}
    	}
    }
    // ...

     

    20 Şubat 2019 Çarşamba 14:32
    Yanıtlayıcı

Tüm Yanıtlar

  • baglanti.BaglantiYolu ne? Bağlantı yolunu gosteren string degil mi? SqlCommand'in Boyle bir constructor'i yok. Hem command ile comcuk ne alaka? comcuk'un hazırlanmasındaki amac ne? Onu hiç kullanmayip, command yaratıp onu kullanmaya calismissiniz.

    Not: AddWithValue kullanmayın, Add kullanıp data tiplerini belirtin.

    Not2: SqlConnection ve SqlCommand'i using ile kullanın:

    using (SqlConnection con = new SqlConnection(bağlantı.BaglantiYolu))
    using (SqlCommand cmd = new SqlCommand(@"insert into
      // ...
      ", con))
    {
      cmd.Parameters.Add("@T", SqlDbType.VarChar).Value = textEdit1.Text;
      // ...
      con.Open();
      cmd.ExecuteNonQuery();
      con.Close();
    }

    gibi.

    Not3: Kontrollere textEdit1, textEdit2, textEdit3 ... gibi isimler  vermek yerine txtTCNo, txtAdSoyad, txtAdres ... gibi isimler verirseniz yazarken ve okurken takibi daha rahat olur. 
    20 Şubat 2019 Çarşamba 14:06
    Yanıtlayıcı
  •  private void simpleButton1_Click(object sender, EventArgs e)
            {
                if (!string.IsNullOrEmpty(textEdit1.Text) && !string.IsNullOrEmpty(textEdit2.Text))
                {
                    DialogResult dlg = MessageBox.Show("Müşteri Bilgileri Sisteme Kaydedilsin mi?", "Kaydetme Onay", MessageBoxButtons.YesNo, MessageBoxIcon.Information);

                    if (dlg == DialogResult.Yes)
                    {
                        SqlCommand comcuk = new SqlCommand("Insert Into Musteriler(TC_No,Ad_Soyad,Adres,Telefon,USagsph,USagcyl,USagxis,USolsph,USolcyl,USolaxis,YSagsph,YSagcyl,YSagaxis,YSolcyl,YSolsph,YSolaxis,Uzakgozlukmarka,Yakingozlukmarka,Fiyat,Tarih,Gozluk_Turu,Garanti_Suresi,Aciklama) values(@T,@AS,@AD,@C,@TK,@USG,@USH,@UCH,@USOL,@USOLSPH,@USCHH,@YSPH,@YCHH,@YSOL,@YSOLSPH,@YSOLCHH,@GM,@YM,@GT,@GF,@TT,@G,@A)", con);
                        comcuk.Parameters.AddWithValue("@T", textEdit1.Text);
                        comcuk.Parameters.AddWithValue("@AS", textEdit2.Text);
                        comcuk.Parameters.AddWithValue("@AD", textEdit3.Text);
                        comcuk.Parameters.AddWithValue("@C", textEdit4.Text);
                        comcuk.Parameters.AddWithValue("@TK", textEdit5.Text);
                        comcuk.Parameters.AddWithValue("@USG", textEdit6.Text);
                        comcuk.Parameters.AddWithValue("@USH", textEdit7.Text);
                        comcuk.Parameters.AddWithValue("@UCH", textEdit8.Text);
                        comcuk.Parameters.AddWithValue("@USOL", textEdit9.Text);
                        comcuk.Parameters.AddWithValue("@USOLSPH", textEdit10.Text);
                        comcuk.Parameters.AddWithValue("@USOLCHH", textEdit11.Text);
                        comcuk.Parameters.AddWithValue("@YSPH", textEdit12.Text);
                        comcuk.Parameters.AddWithValue("@YCHH", textEdit13.Text);
                        comcuk.Parameters.AddWithValue("@YSOL", textEdit14.Text);
                        comcuk.Parameters.AddWithValue("@YSOLSPH", textEdit15.Text);
                        comcuk.Parameters.AddWithValue("@YSOLCHH", textEdit16.Text);
                        comcuk.Parameters.AddWithValue("@GM", textEdit17.Text);
                        comcuk.Parameters.AddWithValue("@YM", textEdit18.Text);
                        comcuk.Parameters.AddWithValue("@GT", textEdit19.Text);
                        comcuk.Parameters.AddWithValue("@GF", textEdit20.Text);
                        comcuk.Parameters.AddWithValue("@TT", textEdit21.Text);
                        comcuk.Parameters.AddWithValue("@G", textEdit22.Text);
                        comcuk.Parameters.AddWithValue("@A", textEdit23.Text);
                        if (con.State == ConnectionState.Closed)
                        {
                            con.Open();
                        }
                        try
                        {

                            if (comcuk.ExecuteNonQuery() > 0)
                            {
                                GetirBilgi();

                            }
                        }
                        catch (Exception Ex)
                        {
                            MessageBox.Show(Ex.ToString());
                        }
                        finally
                        {
                            con.Close();
                        }
                    }
                    else
                    {
                        MessageBox.Show("Bilgi girişi iptal edildi", "Kayıt İptal", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                    }
                }
                else
                {
                    MessageBox.Show("Lütfen tüm alanları doldurunuz.", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                }
            }

    Bu Şekilde Düzenledim Ama Halen Hata Alıyorum 67.Satır Daha Kalın olarak İşarretlediğim Alan

    20 Şubat 2019 Çarşamba 14:15
  • Hala AddWithValue kullanıyorsunuz, butun degerler string mi? Onların icinde null olup da olmaması gereken oldugundan emin misiniz? Komutu tek satırda yazmissiniz, takip edilmesi çok güç. con ne belli degil.

    // ...
    if (dlg == DialogResult.Yes)
    {
    	using (SqlConnection con = new SqlConnection(baglanti.BaglantYolu))
    	using (SqlCommand comcuk = new SqlCommand(@"Insert Into Musteriler 
    		(TC_No,Ad_Soyad,Adres,Telefon,USagsph,
    		USagcyl,USagxis,USolsph,USolcyl,USolaxis,
    		YSagsph,YSagcyl,YSagaxis,YSolcyl,YSolsph,
    		YSolaxis,Uzakgozlukmarka,Yakingozlukmarka,
    		Fiyat,Tarih,Gozluk_Turu,Garanti_Suresi,Aciklama) 
    	values
    		(@T,@AS,@AD,@C,@TK,
    		@USG,@USH,@UCH,@USOL,@USOLSPH,
    		@USCHH,@YSPH,@YCHH,@YSOL,@YSOLSPH,
    		@YSOLCHH,@GM,@YM,
    		@GT,@GF,@TT,@G,@A)", con))
    	{
    		comcuk.Parameters.Add("@T", SqlDbType.VarChar).Value = textEdit1.Text;
    		// ...
    		try
    		{
    
    		con.Open();
    
    			if (comcuk.ExecuteNonQuery() > 0)
    			{
    				GetirBilgi();
    			}
    
    			con.Close();
    
    		}
    		catch (Exception Ex)
    		{
    			MessageBox.Show(Ex.ToString());
    		}
    		finally
    		{
    		}
    	}
    }
    // ...

     

    20 Şubat 2019 Çarşamba 14:32
    Yanıtlayıcı
  • 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.Data;

    namespace Selin__Optik
    {
        public partial class Form2 : Form
        {
            public Form2()
            {
                InitializeComponent();
            }
            public static int GidenID;
            SqlConnection con = new SqlConnection(baglanti.BaglantiYolu);
            private void textEdit13_EditValueChanged(object sender, EventArgs e)
            {

            }

            private void simpleButton1_Click(object sender, EventArgs e)
            {
                if (!string.IsNullOrEmpty(textEdit1.Text) && !string.IsNullOrEmpty(textEdit2.Text))
                {
                    DialogResult dlg = MessageBox.Show("Müşteri Bilgileri Sisteme Kaydedilsin mi?", "Kaydetme Onay", MessageBoxButtons.YesNo, MessageBoxIcon.Information);

                    if (dlg == DialogResult.Yes)
                    {
                        SqlCommand comcuk = new SqlCommand("Insert Into Musteriler(TC_No,Ad_Soyad,Adres,Telefon,USagsph,USagcyl,USagxis,USolsph,USolcyl,USolaxis,YSagsph,YSagcyl,YSagaxis,YSolcyl,YSolsph,YSolaxis,Uzakgozlukmarka,Yakingozlukmarka,Fiyat,Tarih,Gozluk_Turu,Garanti_Suresi,Aciklama) values(@T,@AS,@AD,@C,@TK,@USG,@USH,@UCH,@USOL,@USOLSPH,@USCHH,@YSPH,@YCHH,@YSOL,@YSOLSPH,@YSOLCHH,@GM,@YM,@GT,@GF,@TT,@G,@A)", con);
                        comcuk.Parameters.AddWithValue("@T", textEdit1.Text);
                        comcuk.Parameters.AddWithValue("@AS", textEdit2.Text);
                        comcuk.Parameters.AddWithValue("@AD", textEdit3.Text);
                        comcuk.Parameters.AddWithValue("@C", textEdit4.Text);
                        comcuk.Parameters.AddWithValue("@TK", textEdit5.Text);
                        comcuk.Parameters.AddWithValue("@USG", textEdit6.Text);
                        comcuk.Parameters.AddWithValue("@USH", textEdit7.Text);
                        comcuk.Parameters.AddWithValue("@UCH", textEdit8.Text);
                        comcuk.Parameters.AddWithValue("@USOL", textEdit9.Text);
                        comcuk.Parameters.AddWithValue("@USOLSPH", textEdit10.Text);
                        comcuk.Parameters.AddWithValue("@USOLCHH", textEdit11.Text);
                        comcuk.Parameters.AddWithValue("@YSPH", textEdit12.Text);
                        comcuk.Parameters.AddWithValue("@YCHH", textEdit13.Text);
                        comcuk.Parameters.AddWithValue("@YSOL", textEdit14.Text);
                        comcuk.Parameters.AddWithValue("@YSOLSPH", textEdit15.Text);
                        comcuk.Parameters.AddWithValue("@YSOLCHH", textEdit16.Text);
                        comcuk.Parameters.AddWithValue("@GM", textEdit17.Text);
                        comcuk.Parameters.AddWithValue("@YM", textEdit18.Text);
                        comcuk.Parameters.AddWithValue("@GT", textEdit19.Text);
                        comcuk.Parameters.AddWithValue("@GF", textEdit20.Text);
                        comcuk.Parameters.AddWithValue("@TT", textEdit21.Text);
                        comcuk.Parameters.AddWithValue("@G", textEdit22.Text);
                        comcuk.Parameters.AddWithValue("@A", textEdit23.Text);
                        if (con.State == ConnectionState.Closed)
                        {
                            con.Open();
                        }
                        try
                        {

                            if (comcuk.ExecuteNonQuery() > 0)
                            {
                                GetirBilgi();

                            }
                        }
                        catch (Exception Ex)
                        {
                            MessageBox.Show(Ex.ToString());
                        }
                        finally
                        {
                            con.Close();
                        }
                    }
                    else
                    {
                        MessageBox.Show("Bilgi girişi iptal edildi", "Kayıt İptal", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                    }
                }
                else
                {
                    MessageBox.Show("Lütfen tüm alanları doldurunuz.", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                }
            }
            public void GetirBilgi()
            {
                listView1.Items.Clear();
                SqlCommand cmd = new SqlCommand("Select * From Musteriler", con);
                if (con.State == ConnectionState.Closed)
                {
                    con.Open();
                }
                SqlDataReader rdr = cmd.ExecuteReader();
                if (rdr != null)
                {
                    while (rdr.Read())
                    {
                        ListViewItem list = new ListViewItem();
                        list.Text = rdr["id"].ToString();
                        list.SubItems.Add(rdr["Ad_Soyad"].ToString());
                        list.SubItems.Add(rdr["Adres"].ToString());
                        list.SubItems.Add(rdr["Tarih"].ToString());
                        list.SubItems.Add(rdr["Aciklama"].ToString());
                        listView1.Items.Add(list);
                    }
                }
                else
                {
                    MessageBox.Show("Listelenecek Kayıt Bulunamadı", "Raporlama Sonuç", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                con.Close();
            }
            private void textEdit1_KeyPress(object sender, KeyPressEventArgs e)
            {

            }
        }
    }

    Tamamı Bu Şekildedir.

               
    20 Şubat 2019 Çarşamba 14:38
  • AddWithValue oldugu surece karanlıkta. Isterseniz team ID verin bakalım (5-10 dk kadar bekliyorum).
    20 Şubat 2019 Çarşamba 14:40
    Yanıtlayıcı
  • 1 322 903 786

    62cy7f

    Teşekkürler

    20 Şubat 2019 Çarşamba 14:44