İçeriğe geç

Adım Adım Asp.Net MVC Projesi #5

Entitiy Framework ile Database’ye Veri Ekleme, Html.BeginForm Kullanımı

Bu yazıda başlıktanda anlayabileceğiniz üzere Html.BeginForm kullanarak girilen verilerin Entity Framework ile database’e nasıl ekleyeceğimiz göreceğiz. O zaman başlayalım. 🙂

1.İlk olarak Admin View klasörüne AdminAdd adında bir view ekleyelim. _LayoutAdmin SharedLayout’u kullansın.

Öğeyi incele dediğimizde yazdığımız Html.BeginForm’un html form’una dönüştüğünü aşağıda görebilirsiniz.

Bu View’da Html.BeginForm kullanarak bir form oluşturduk. Ve Asp.Net’in özelliklerini kullanarak (Html.TextBox gibi) form yapısı oluşturduk. Browser bu kodları html kodlarına otomatik olarak çevirmektedir.
Html.BeginForm’ ın ilk özelliğine gideceği Actionın adını veriyoruz ikinci özelliğie Actionın bulunduğu Controller’ın adını veriyoruz. Sonra Form’un methodunu belirtiyoruz biz burada FormMethod.Post diyerek form methodumuzun post olacağını belirttik.

ViewBag’lerin kontrolünü yaptık eğer null değillerse değerlerini ekrana yazdırdık. Bunlar bizim post işlemimizden sonra değer alacağı için post işleminden sonra ekrana yazılacaktır.

2. Admin Controller’a AdminAdd isimli bir ActionResult oluşturalım.

3. AdminAdd  actionının post olduğunda çalışacak methodu Controllerımıza ekliyoruz.

Yorum satırları ile nerede ne yaptığımı anlatmaya çalıştım ama kabaca burada da neler yaptım anlatayım.
ActionResult’ımız “name,username, password, status” değerlerini parametre olarak verdik. Burada dikkat etmemiz gereken Login işlemindeki gibi inputların name’leri ile parametrelerin adları aynı olmalı.

Username’i tblAdmin tablosunda sorgulattım eğer yoksa yeni kullanıcıyı ekledim ve başarılı olduğunu gösteren bir mesaj yolladık, eğer varsa hata mesajı yolladım.

Başarılı ekleme ve başarısız ekleme sonuçlarında neler olduğunu yukarıdaki ekran görüntülerden görebilirsiniz.

 

Tarih:Asp.Net MVCYazılım/Teknoloji

3 Yorum

  1. Aygen Aygen

    The INSERT statement conflicted with the FOREIGN KEY constraint “FK_tblAdmin_tblStatus”. The conflict occurred in database “blog”, table “dbo.tblStatus”, column ‘id’.
    The statement has been terminated.

    tablolar arası ilişkilendirmeden dolayı ekleme işleminde bu hatayı alıyorum.
    Nasıl Çözebilirim

    • damlakayali damlakayali

      database’in backup’ını alıp gönderebilir misin bir bakayım

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir