MVC 5 System null exception hatası

Yeniçocuk

Kilopat
Katılım
30 Kasım 2018
Mesajlar
5.554
Makaleler
2
Çözümler
13
MVC 5 ile kütüphane sistemi yapıyorum, tüm işlemler başarılı ama ödünç kitabı geri almaya kalktığım zaman bu hata veriyor. Nasıl çözebilirim?

hata1.JPG

hata2.JPG

[CODE lang="csharp" title="Controller Kodu" highlight="53"]public class OduncController : Controller.
{
KutuphaneEntities db = new KutuphaneEntities();
public ActionResult Index()
{
var degerler = db.tblHareket.Where(x => x.IslemDurum == false).ToList();
return View(degerler);
}
[HttpGet]
public ActionResult OduncVer()
{
List<SelectListItem> deger1 = (from x in db.tblUyeler.ToList()
select new SelectListItem.
{
Text = x.UyeAd + " " + x.UyeSoyad,
Value = x.UyeId.ToString()
}).ToList();

List<SelectListItem> deger2 = (from y in db.tblKitap.Where(x => x.Durum == true).ToList()
select new SelectListItem.
{
Text = y.KitapAd,
Value = y.KitapId.ToString()
}).ToList();

List<SelectListItem> deger3 = (from z in db.tblPersonel.ToList()
select new SelectListItem.
{
Text = z.PersonelAd + " " + z.PersonelSoyad,
Value = z.PersonelId.ToString()
}).ToList();
ViewBag.dgr1 = deger1;
ViewBag.dgr2 = deger2;
ViewBag.dgr3 = deger3;
return View();
}
[HttpPost]
public ActionResult OduncVer(tblHareket p)
{
var d1 = db.tblUyeler.Where(x => x.UyeId == p.tblUyeler.UyeId).FirstOrDefault();
var d2 = db.tblKitap.Where(y => y.KitapId == p.tblKitap.KitapId).FirstOrDefault();
var d3 = db.tblPersonel.Where(z => z.PersonelId == p.tblPersonel.PersonelId).FirstOrDefault();
p.tblUyeler = d1;
p.tblKitap = d2;
p.tblPersonel = d3;
db.tblHareket.Add(p);
db.SaveChanges();
return RedirectToAction("Index");
}
public ActionResult Odunciade(tblHareket p)
{
var odn = db.tblHareket.Find(p.HareketId);
DateTime d1 = DateTime.Parse(odn.IadeTarih.ToString());
DateTime d2 = Convert.ToDateTime(DateTime.Now.ToShortDateString());
TimeSpan d3 = d2 - d1;
ViewBag.dgr = d3.TotalDays;
return View("Odunciade", odn);
}
public ActionResult OduncGuncelle(tblHareket p)
{
var hrk = db.tblHareket.Find(p.HareketId);
hrk.UyeGetirTarih = p.UyeGetirTarih;
hrk.IslemDurum = true;
db.SaveChanges();
return RedirectToAction("Index");
}
}[/CODE]
 
Nullpointerexception atıyor. 63. satırdaki verinin dolu olduğuna emin miyiz? Odn nesnesini kontrol et. Debug yapar mısın?

Bu hata kitabı iade et butonuna basınca hata veriyor. Kitabı başarılı bir şekilde ödünç verebiliyorum. Veri tabanı kısmında bilgiler geliyor ama tekrardan bir bakayım.
 
Eğer "IadeTarih" tarih alanı null ile DateTime tipine atayamazsın. Tipi DateTime? olmalı. Herhangi bir parse işlemi yapmana gerek kalmaz.
 
Sorunum çözüldü arkadaşlar sorun iade kısmında fazladan bir alan varmış bu alana ulaşamadığı için hata verdiğini anladım önerileriniz için teşekkürler.
Eğer "ıadetarih" tarih alanı null ile DateTime tipine atayamazsın. Tipi DateTime? olmalı. Herhangi bir parse işlemi yapmana gerek kalmaz.

Tipi Datetime? sorun View kısmında alan yapmış olmam silince düzeldi bilginiz için sağ olun.
 

Geri
Yukarı