benim mimarisinde Benim katmanları depo, iş ve bağımlılık enjeksiyon kalıplarının birimini kullanın:Depo Desen Birim Ninject
Çekirdek
dataLayer'ı
BusinessLayer
ServiceLayer
Yapım birimimde, iş sınıfı biriminde bir sorun var i _kullaniciDAL gibi DataAccessLayers enjekte etmek istiyorum burada
public class UnitOfWork:IUnitOfWork
{
private readonly IDataContext _context;
private IKullaniciDal _kullaniciDal;
private IKategoriDal _kategoriDal;
private IUrunDal _urunDal;
public UnitOfWork(IDataContext context)
{
_context = context;
}
public IKategoriDal KategoriDal => _kategoriDal ?? (_kategoriDal = new KategoriDal(_context));
public IKullaniciDal KullaniciDal => _kullaniciDal ?? (_kullaniciDal = new KullaniciDal(_context));
public IUrunDal UrunDal => _urunDal ?? (_urunDal = new UrunDal(_context));
public void SaveChanges()
{
_context.SaveChanges();
}
}
yukarıdaki gibi
çok aranan ve ben iş doğrudan depo örneğine erişmek istemiyorum met depo genericly üretmek için bazı örnekler gördük, ben erişmek istediğiniz benim KullaniciDal sınıfının İşte örneklerinin KullaniciDal
kodupublic interface IKullaniciDal : IRepositoryEntityFramework<Kullanici>
{
}
public class KullaniciDal : RepositoryEntityFramework<Kullanici>, IKullaniciDal
{
public KullaniciDal(IDataContext dbContextBase) : base(dbContextBase)
{
}
}
Ben bazıları özel veri erişim katmanı bazı ekstra fonksiyonlar yazmak istiyorum gibi örneklerini kullanmak istemeniz iş sınıfı biriminin bir bölümü
Dal sınıflarını nasıl enjekte edebilirim? Bağlam nesnesini her dal sınıfına geçirdiğim konusunda dikkatli olun
Sunulan gibi denedim ama çalışma birimindeki bağlam örneğinin ve daldaki örneğin aynı olmadığı konusunda bir sorunum var. ninject Bind() kullanıyorum. (). InRequestScope(); nerede yanlış yapıyorum –
@OkanSARICA Bu, reddetme yapılandırmanızda bir kapsam belirleme sorunu olmalı, lütfen bu kodu da gönderin. – Brook
Ninject.Web.Common nuget paketini kullanıyordum, onu kaldırdım ve Ninject.Mvc3'ü kurdum ve problem çözüldü, ilginç –