none
Veritabanına Güncelleme Yapamıyorum RRS feed

  • Soru

  •     asdDataContext ggh= new asdDataContext();
                Programlar programs = ggh.Programlars.First(k => k.ProgramId == Convert.ToInt32(Request.QueryString["id"]));
                programs.ProgramAdi = TextBox1.Text;
                ggh.SubmitChanges();

    sorun şu yukarıdaki kodu çalıştırınca güncelleme  olmuyor. fakat aşagıdaki gibi yaparsan güncelliyor. yani textbox'ı kaldırınca

    bende anlamadım ya, birde gridview güncelleme yapmıyor. sorun nedir ?

        asdDataContext ggh= new asdDataContext();
                Programlar programs = ggh.Programlars.First(k => k.ProgramId == Convert.ToInt32(Request.QueryString["id"]));
                programs.ProgramAdi = "Merhabaaaaaa";
                ggh.SubmitChanges();

    31 Temmuz 2012 Salı 08:07

Yanıtlar

  • Selam

    Page_Load  da Textbox'ın içeriğini çağırıyorsan if(!IsPostBack) kullan. Yoksa her butona basışında önce veritabanını okur eski veriyi tekrar textbox a yazar ve aynı veriyi update eder.

    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                TextBoxlariDoldur();
            }
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            Guncelle();
        }

    gibi.


    "Basitçe açıklayamıyorsan eğer, yeterince anlayamamışsındır." Alb. Einstein
    http://www.tiravoglu.com

    • Yanıt Olarak İşaretleyen Suat Çelikol 31 Temmuz 2012 Salı 12:11
    31 Temmuz 2012 Salı 11:12

Tüm Yanıtlar

  • Belki güncelliyordur SubmitChanges'den sonra gridView1.DataBound(); yazdınız mı? Birde TextBox1.Text in null olmadığından eminsiniz dimi?

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    31 Temmuz 2012 Salı 08:41
    Moderatör
  • Bu kod gridview için degil zaten. Manuel formdan yapılan güncelleme işlemi, textbox null degil. bu hata nedir böyle çözemedim günlerdir
    31 Temmuz 2012 Salı 08:49
  • Belki biraz saçma olacak ama şu şekilde denermisin :  programs.ProgramAdi = "'"+ TextBox1.Text + "'";
    31 Temmuz 2012 Salı 09:24
  • malesef olmuyor !
    31 Temmuz 2012 Salı 10:11
  • Selam

    Page_Load  da Textbox'ın içeriğini çağırıyorsan if(!IsPostBack) kullan. Yoksa her butona basışında önce veritabanını okur eski veriyi tekrar textbox a yazar ve aynı veriyi update eder.

    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                TextBoxlariDoldur();
            }
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            Guncelle();
        }

    gibi.


    "Basitçe açıklayamıyorsan eğer, yeterince anlayamamışsındır." Alb. Einstein
    http://www.tiravoglu.com

    • Yanıt Olarak İşaretleyen Suat Çelikol 31 Temmuz 2012 Salı 12:11
    31 Temmuz 2012 Salı 11:12