İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. Web Programlama (PHP, ASP, HTML, CSS, JavaScript)
Web Programlama (PHP, ASP, HTML, CSS, JavaScript)

MVC5 Hatası

Gece baykuşu12.12.202011 cevap1.741 görüntüleme
2019'den beri500 mesaj
#1
Merhabalar MVC5 ile kütüphane sistemi yapmaya çalışıyorum. Ama bütün Getir kısımlarında bu hatayı alıyorum nasıl çözebilirim.
hata1.JPGhata2.JPGhata2.JPG
YazarController Kodları
    public class YazarController : Controller
    {
        // GET: Yazar
        MvcKutuphaneOdevOtomasyonEntities db = new MvcKutuphaneOdevOtomasyonEntities();
        public ActionResult Index()
        {
            var degerler = db.tblYazar.ToList();
            return View(degerler);
        }
        [HttpGet]
        public ActionResult YazarEkle()
        {
            return View();
        }

        public ActionResult YazarEkle(tblYazar y)
        {
            db.tblYazar.Add(y);
            db.SaveChanges();
           return View();
        }
        public ActionResult YazarSil(int id)
        {
            var yazar = db.tblYazar.Find(id);
            db.tblYazar.Remove(yazar);
            db.SaveChanges();
            return RedirectToAction("Index");
        }
        public ActionResult YazarGetir(int id)
        {
            var yzr = db.tblYazar.Find(id);
            return View("YazarGetir", yzr);
        }
        public ActionResult YazarGuncelle(tblYazar y)
        {
            var yazar = db.tblYazar.Find(y.Id);
            yazar.YazarAd = y.YazarAd;
            yazar.YazarSoyad = y.YazarSoyad;
            yazar.Detay = y.Detay;
            db.SaveChanges();
            return RedirectToAction("Index");
        }
    }
}
Cevaplar
2020'den beri6.334 mesaj
#2
KutuphaneOdevOtomasyonEntitie
Çok uzun bir veri tabanı ismi olmuş.
Gece baykuşu Konuyu açan
2019'den beri500 mesaj
#3
Shiden dedi: ↑
Çok uzun bir veri tabanı ismi olmuş.
Ayrıca bir kaç tane modül eksik gibi duruyor. Java dilini biliyorum da biraz. C#'a yakın gibi. Buradan böyle inceliyorum.
Veritabanı ismini düzeltsem sorun düzelir mi peki? Hangi modüller eksik olabilir. Videodaki gibi yaptım. Hocaya bile sordum hata bulamadım dedi.
2020'den beri6.334 mesaj
#4
db.tblYazar.ToList()
Pardon durum anladım. Modül hatası yok, şimdi fark ettim. Büyük ihtimal ile farklı bir veri tipinden kaynaklı null hatası gibi duruyor.
1607763883036.png
Böyle bir null hatası gibide olabilir. Bir veri tipine değer yazıyor lakin sonra "null" veriyor.
Umarım anlatabilmişimdir.
düzenlendi
Gece baykuşu Konuyu açan
2019'den beri500 mesaj
#5
Shiden dedi: ↑
Pardon durum anladım. Modül hatası yok, şimdi fark ettim. Büyük ihtimal ile farklı bir veri tipinden kaynaklı null hatası gibi duruyor.
Sorun değil hocam. Peki neden böyle bir hata veriyor anlamadım. İsterseniz VT Sütunlarının resmini atabilirim
👍 1
2020'den beri6.334 mesaj
#6
Sorun değil hocam. Peki neden böyle bir hata veriyor anlamadım. İsterseniz VT Sütunlarının resmini atabilirim
Atın bakayım hocam. Diziler veri tabanı gibi lakin ilk başta doğru değerleri depo ederken, sonra "null" verdi bende.
Gece baykuşu Konuyu açan
2019'den beri500 mesaj
#7
Kitap,Kategori,Yazar,Yayınevi Getir yapınca hata veriyor diğer stüunlara veri eklemeye başlamadım. Diyagramı'da ekledim

ceza.JPGdiyagram.JPGEkran Alıntısı.JPGhareket.JPGkasa.JPGkategori.JPGkitap.JPGpersonel.JPGuyeler.JPGyayinevi.JPG
2020'den beri6.334 mesaj
#8
Kitap,Kategori,Yazar,Yayınevi Getir yapınca hata veriyor diğer stüunlara veri eklemeye başlamadım. Diyagramı'da ekledim

Hocam yazar, kategori dediğimiz şeyler veri sayı olamaz herhalde. INT sayı türü ve bir aralığı var.
Bu yazar, kategori gibi şeyler daha çok String olmalı.
Gece baykuşu Konuyu açan
2019'den beri500 mesaj
#9
Shiden dedi: ↑
Hocam yazar, kategori dediğimiz şeyler veri sayı olamaz herhalde. INT sayı türü ve bir aralığı var.
Bu yazar, kategori gibi şeyler daha çok String olmalı.
İlişkilendirme kısmı için yapmıştım ama string yaparsam düzelir değil mi?
2020'den beri6.334 mesaj
#10
İlişkilendirme kısmı için yapmıştım ama string yaparsam düzelir değil mi?
Hocam ilk başta değişkenlere tekrar karar verin.
Örneğin kitap olarak tanımladığını şey bir sayı mıdır, bir isimdir.
Yani eğer bir veri tabanı içinde 5. kitap mıdır, yoksa kitabın direk adı mıdır?
Daha da anlaşılır anlatayım.
String[] kitap = ["Hayvan çiftliği", "1984", "Kelile ve Dimne", "Seyahatname"];


gibi bir dizininiz vardır.
Siz eğer bunu veri tabanında kitap[INT] gibi tanımlarsanız, veri tabanınızda, dizi de olan bir veri belirebilir, dizi elemanından büyük sayı girdiğinizde o dizide o kadar eleman olmadığı için "null" hatası verebilir.

Ya da kitap dediğimiz değişken sadece düz String yapıdadır.

Bunları bilmeniz ve buna göre değişkenleri oluşturmanız gereklidir. Umarım anlatabilmişimdir.
👍 1
Gece baykuşu Konuyu açan
2019'den beri500 mesaj
#11
Shiden dedi: ↑
Hocam ilk başta değişkenlere tekrar karar verin.
Örneğin kitap olarak tanımladığını şey bir sayı mıdır, bir isimdir.
Yani eğer bir veri tabanı içinde 5. kitap mıdır, yoksa kitabın direk adı mıdır?
Daha da anlaşılır anlatayım.
String[] kitap = ["Hayvan çiftliği", "1984", "Kelile ve Dimne", "Seyahatname"];


gibi bir dizininiz vardır.
Siz eğer bunu veri tabanında kitap[INT] gibi tanımlarsanız, veri tabanınızda, dizi de olan bir veri belirebilir, dizi elemanından büyük sayı girdiğinizde o dizide o kadar eleman olmadığı için "null" hatası verebilir.

Ya da kitap dediğimiz değişken sadece düz String yapıdadır.

Bunları bilmeniz ve buna göre değişkenleri oluşturmanız gereklidir. Umarım anlatabilmişimdir.
Konuyu anladım anlatımınız için teşekkürler. Amacım kitabın ekrana sırasıyla gelmesi ekleme güncelleme yapmak idi amacım
👍 1
2012'den beri3.287 mesaj
#12
Lambda exp kullanmalısınız kodlarınız eksik. Tavsiye olarakta controller kısmında iş yaptırmayın. ID yi argüman olarak basmışsınız ama argüman tablonun kendisine gitmiş.
var yzr = db.tblYazar.Find(id); bu kod doğru görünmüyor.
var yzr = db.tblYazar.Find(x=>x.Id==id); şeklinde yazabilirsiniz.
yada
var yzr = from s in db.tblYazar where s.Id == id select s;
gibi.

veritabanınız hazır ise "c# mvc database first crud migration" şeklinde araştırma yapın ve visual studio nun sizin için bu kodları yazmasını isteyebilirsiniz. Kodları inceleyin olayı anlarsınız.

Tek katmanlı olarak şu kodumu inceleyebilirsiniz.
https://github.com/SametUCA/article-site-asp-core-mvc/tree/master/ArticleGUI
👍 1düzenlendi

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.