C# Add metodunun çalışmaması

"RentalId" kolonuna sağ tıklayıp "Set Primary Key" seçeneğini tıklamayı deneyin.
Yine tekrardan kendi elimle girdiğim bilgiler geldi. Hata mesajı yok bu sefer, ama kod ile girdiğimin çalışmaması çok garip.
 

Dosya Ekleri

  • 5454545.png
    5454545.png
    172,5 KB · Görüntüleme: 16
Veri tabanında bir şeyi değiştirdikten sonra context.SaveChanges() methodunu çağırıyor musunuz?

Bu fotoğraflar yardımcı olur mu? Core katmanım var, orada EfEntityRepository diye bir Class'ım var. Orada yazan class içinden diğer classlara dağıtıyorum.

İsterseniz Github linkimi atabilirim, incelemek isterseniz hatayı.
 

Dosya Ekleri

  • 44444444444.png
    44444444444.png
    170 KB · Görüntüleme: 18
  • 5454545.png
    5454545.png
    172,5 KB · Görüntüleme: 18
Bu fotoğraflar yardımcı olur mu? Core katmanım var, orada EfEntityRepository diye bir Class'ım var. Orada yazan class içinden diğer classlara dağıtıyorum.

İsterseniz Github linkimi atabilirim, incelemek isterseniz hatayı.
Her ekleme, silme ve güncelleme işleminden sonra "CarRentalProjectContext" sınıfının "SaveChanges()" methodunu çağırır mısınız?
Burada çağırmanız yeterli.
 
Her ekleme, silme ve güncelleme işleminden sonra "CarRentalProjectContext" sınıfının "SaveChanges()" methodunu çağırır mısınız?

Burada çağırmanız yeterli.
Hocam CarRentalProjectContext'in içi bu şekilde, dediğiniz yerde de SaveChanges komutu gelmiyor.
 

Dosya Ekleri

  • 66666666.png
    66666666.png
    148,6 KB · Görüntüleme: 18
Hocam CarRentalProjectContext'in içi bu şekilde, dediğiniz yerde de SaveChanges komutu gelmiyor.
Hayır sınıf içinden değil. Şöyle:

[CODE lang="csharp" title="C#"]CarRentalProjectContext context = new CarRentalProjectContext(); //Burayı methodu çağıracağınız sınıfın en üstünde tanımlayın.

_rentalDal.Add(...);
context.SaveChanges();
return new SuccessResult();[/CODE]
 
Hayır sınıf içinden değil. Şöyle:

[CODE lang="csharp" title="C#"]CarRentalProjectContext context = new CarRentalProjectContext(); //Burayı methodu çağıracağınız sınıfın en üstünde tanımlayın.

_rentalDal.Add(...);
context.SaveChanges();
return new SuccessResult();[/CODE]

Hala benim elimle yazdığımı görüyor sadece. Aslında ödevim tamamlandı ama, bu method çalışmadan benim içim rahat etmeyecek.

@Evilmonster emirduman2/CarRentalProject incelemek isterseniz link bu hocam.
 
Şu an çok müsait değilim. Eve gidince size dönüş yapacağım.
Gerçekten bir şeyler ters fakat birden bakınca gözümde çok büyüdü.

Sorun "EfEntityRepositoryBase" sınıfındaki Add metodunda Entry yerine Add kullanmadığınızdan kaynaklanıyor olabilir. Bildiğim kadarıyla Entry, ekleme işlemleri için kullanılmıyor.

Böyle dener misiniz?

[CODE lang="csharp" title="C#"]context.Add(entity);
var addedEntity = context.Entry(entity);
addedEntity.State = EntityState.Added;
context.SaveChanges();[/CODE]
 
Son düzenleme:

Geri
Yukarı