#Sharp.Net - Suat Tuncer

31/10/2008 - NHibernate ve Performans

Kategori: CSharp

Çok uzun olmamakla beraber bir süredir proje geliştiriken NHibernate kullanıyorum. Aslında oldukça pratik bir tool. Özellikle nesnelerin rahatlığını size sunduğu için odağınızı neredeyse tamamen uygulama katmanına kaydırıyor, buda daha kaliteli, okunabilir ve yüksek oranda object oriented bir kodun orataya çıkmasını sağlıyor.

Fakat yaşadığım bir kaç sıkıntıyı paylaşmak isterim. Create, Update ve Delete işlemlerinde oldukça hızlı ve sorunsuz çalışmasına rağmen sorgulama özellikle de raporlamada çok ciddi performans sıkıntıları var, tabi burada problem birazda benim raporlama kaynağı olarakta object collectionlar kullanmak istememden kaynaklanıyor.

Tavsiyem sorgulamada HQL veya SQL kullanılmasından yanadır özellikle complex raporlama tarzı sorgularda kesinlikle IQuery interfacesi kullanılmalı ICriteria değil. Benim tercihim HQL hernekadar SQL tarzı sıkıcı sorgular yazmak zorunda kalsamda nesne sorguladığım için daha keyifli ve kullanışlı. Gönül isterdiki LINQ ile NHibnernate kardeş kardeş çalışsın mamhif henüz mümkün değil.

EkleBunu Sosyal Paylaşım Butonu
Yorum yaz!

2008-11-21 07:53:57 - NHibernate

Yazan: Ali YALÇIN
Elinize sağlık hocam.
Teşekkürler.
İyi çalışmalar...
Bağlantı

2008-11-20 13:59:13 - RE : NHibernate

Yazan: suattuncer
Selam Ali,

// Sorgu Cümlesi hazırlanıyor, SQL cümlesi gibi düşünülebilir
// farkı tablolar herine tipler var
StringBuilder hql = new StringBuilder();
hql.Append("from HighCode.Domain.Content as content ");
hql.Append("where content.ContentType=:type");

// hql cümlesi kullanılarak bir IQuery nesnesi oluşturulur
IQuery query = _session.CreateQuery(hql.ToString());
// parametre eklenir
query.SetParameter("type", ContentType.Article);

// sorgu çalıştırılır
IList<Content> result = query.List<Content>();

kolay gelsin
Bağlantı

2008-11-19 14:30:50 - NHibernate

Yazan: Ali YALÇIN
Selam Hocam, HQL ve IQuery Interface'i kullanılarak yazılmış birkaç sorgu örneği gönderebilirseniz çok sevinirim.

Kendinize iyi bakın.
İyi Çalışmalar...
Bağlantı

2008-11-19 14:17:04 - NHibernate

Yazan: Ali YALÇIN
Selam hocam, HQL ve IQuery Interface'i kullanılarak yazılmış sorgu örnekleri gönderebilirmisiniz?

Kendinize iyi bakın görüşürüz...
Bağlantı

<- Son Sayfa :: Sonraki Sayfa ->

Hakkımda

.Net teknolojileri, # Sharp Dilleri ve olan biten ne varsa

Kategoriler

Arkadaşlarım

hepgittik