Mustafa ÖZCAN - Kişisel Web Sitesi

SubSonic 3 Sürümü Yayınlandı

mustafaozcan - 05.07.2009 15:32:00

 

SubSonic 3 sürümü yayınlandı. Framework 3.5 ve linq desteği kullanılan bu sürüm bir çok yeni özelliği de beraberinde getirmektedir.

Özellikle Migrations yada SimpleRepository diye adlandırılan kodlar sayesinde kendi oluşturduğunuz modellerin de veritabanı üzerinde oluşturulması artık çok kolay. Hatırlarsanız eski sürümlerde hep tek yönlü bir code generation olmaktaydı. Yani sadece database den class a, ancak yeni versiyon ile manuel oluşturduğunuz classların db ye oluşturulması çok kolay.

En büyük özelliklerden birisi de artık MVC projelerinde sorunsuz kullanılabilmektedir.

Projenin sitesi yenilenmiş, dökümantasyon daha anlaşılır bir şekilde gruplandırılmış, kaynak kodlar github a taşınmış.

Daha detaylı bilgi için :

Yenilenen Proje sitesi : subsonicproject.com

Yenilenen Dökümanlar

Yenilenen kaynak kod arşivi : http://github.com/subsonic


Paylaş

Taglar : , , , ,

Kategoriler : C# | Veritabanı (Database)

SubSonic 2.2 Sürümü Yayınlandı

mustafaozcan - 11.04.2009 15:33:00

 

SubSonic 2.2 sürümü yayınlandı. Release Notes dan okuduğum kadarı ile 2.1 den bekleyen birçok bug düzelmiş. Ancak henüz deneme fırsatım olmadı. Denedikten sonra tekrar burada sonuçları yazacağım.

Binary Formatını aşağıdaki adresten indirebilirsiniz (SubStage de dahil):

http://subsonicproject.googlecode.com/files/SubSonic2.2.zip

Kaynak kodlarını da aşağıdaki adresten indirip inceleyebilirsiniz:

http://subsonicproject.googlecode.com/svn/trunk/


Paylaş

Taglar : ,

Kategoriler : ASP.NET | C# | Web

SubSonic 2.1 MİN is not a recognized built-in function name hatası

mustafaozcan - 12.07.2008 13:29:00

SubSonic 2.1 versiyonundaki yeni özellikleri kullanıyorsanız ve bölgesel ayarlarınız Türkçe ise bir tablodaki Min değeri almak istediğinizde bu şekilde bir hata ile karşılaşacaksınız : 'MİN' is not a recognized built-in function name.

Bunun çözüm yolunu ise benim CodePlex e açtığım WorkItem dan öğrenebilirsiniz.

Düzeltme 16.07.2008 :

Bu hata 473. revizyonda düzeltilmiş durumda. Subsonic 2.1.1 versiyonu ile birlikte herkes tarafından kullanılır olacaktır.

 


Paylaş

Taglar : , ,

Kategoriler : Veritabanı (Database)

SubSonic 2.1 Sürümü Yayınlandı

mustafaozcan - 11.07.2008 09:47:00

 

SubSonic yeni versiyonu yayınlandı. Bu yeni versiyonda eskiye nazaran bir çok yenilik mevcut. Ayrıca hep şikayet ettiğimiz bir çok Türkçe hatası giderilmiş durumda.

Benim gözlemlediğim değişiklikler şu şekilde :

  • SubStage : Class oluşturan sonic.exe halen kullanılmakla birlikte artık SubSonic ; classları oluşturabilen, scaffolding testi için dahili bir web server barındıran, ayarların saklanabildiği ve daha bir çok yeni özelliği üzerinde barındıran bir windows uygulamasına sahip.
  • Yeni sorgulama yapısı tıpkı Linq gibi kullanılabilmekte.
  • Sayfalama (Paging) eğer SQL Server 2005 üzeri bir versiyon kullanıyorsanız artık sayfalama SQLServer 2005 ROW_NUMBER() fonksiyonu ile sağlanmakta (Eskiden bir temp tablosuna yazılıyordu) ve bu da performans arttırıcı bir etken olacakmış gibi görünmekte.
  • Generics : C# 2.0 dan sonra gelen bu özellik SubSonic te neredeyse her yerde kullanılmakta.
  • Türkçe problemleri giderildi (bu linkte daha önce belirttiğim hatalar).
  • Devamı daha sonraki incelemeler sonucunda gelecek ... :)


Örnek olarak sizlere bir kaç kod göstermek isterim (Dikkat : Subsonic bağımlılık yapabilir).

SubSonic kullanılan bir projede:

  •  Bir tablodaki toplam kayıt sayısını bulmak :
    int records = new Select("productID")
                     .From("Products").GetRecordCount();

  • Bir tabloyu nesne olarak kullanmak :
    Product p = new Select().From<Product>()
                   .Where("ProductID").IsEqualTo(1).ExecuteSingle<Product>();
  • Max kaydı bulmak :
    double result = new
            Select(Aggregate.Max("UnitPrice"))
            .From(Product.Schema)
            .ExecuteScalar<double>();
  • Çoklu Join kullanımı ve sonuçların Collection olarak döndürülmesi :
    CustomerCollection customersByCategory = new Select()
                    .From(Customer.Schema)
                    .InnerJoin(Order.Schema)
                    .InnerJoin(OrderDetail.OrderIDColumn, Order.OrderIDColumn)
                    .InnerJoin(Product.ProductIDColumn, OrderDetail.ProductIDColumn)
                    .Where("CategoryID").IsEqualTo(5)
                    .ExecuteAsCollection<CustomerCollection>();
  • Sayfalama :
    SubSonic.SqlQuery q = Select.AllColumnsFrom<Product>().
                   Paged(1, 20).Where("productid").IsLessThan(100);

 

Daha detaylı bilgiler için (İngilizce):

SubSonic 2.1 indirmek için tıklayın

Paylaş

Taglar : , , , ,

Kategoriler : ASP.NET | Veritabanı (Database)

SubSonic 2.1 RC 1 deki Türkçe problemi düzeltildi

mustafaozcan - 25.06.2008 00:59:00

 

Bence Microsoft .Net tarafındaki açık kaynak kodlu en iyi ORM aracı olan SubSonic 2.1 RC 1 versiyonu yakın bir zaman önce yayınlandı. Ancak bölgesel ayarlarınız Türkçe ise bu sürümünde bazı hatalar ile karşılaşıyorsunuz. Bende bu hataları buldum ve düzelttim. Bu durumu da CodePlex teki projenin hata takibi bölümüne ekledim.

Bugün SVN sistemindeki kaynak kodları çektiğimde benim belirttiğim hataların giderilmiş olduğunu gördüm. Eğer sizde benim gibi SubSonic kaynak kod sistemini yakından takip ediyorsanız 456. revizyonla bu hataların giderildiğini görebilirsiniz. Diğer kullanıcılar ise SubSonic 2.1 RC 2 ile Türkçe hataları giderilmiş versiyonunu kullanabilirler.

Ayrıca 2.1 ile bir çok özellik yenilenmiş ve eski sürümlerdeki bir çok hata giderilmiş. Yeni olan başka bir özellik ise eskiden konsol uygulaması ile classlar oluşturulurken artık SubStage ile Windows Forms uygulaması üzerinden classlar oluşturulabiliyor ve bir çok veri tabanı ve provider ayarlarını saklayıp daha sonra kullanabiliyorsunuz.

Bugüne kadar ORM  ile uğraşmadıysanız treni kaçırmadan başlayın derim.

 


Paylaş

Taglar : , , , , ,

Kategoriler : ASP.NET | Veritabanı (Database)

ASP.NET MVC Preview 3

mustafaozcan - 29.05.2008 01:58:00

Benim de merakla beklediğim ASP.NET MVC nin 3. önizlemesi yayınlandı. Sanırım önümüzdeki süreçte ancak kendi makinalarımızda test etmekle yetineceğimiz bir özellik olacak. Hosting firmalarının "Herkes denesin problem olmazsa bizde yükleriz." anlayışı nedeni ile her beta ürün gibi ancak Release olmasını ve üzerinden bir süre geçmesini beklemek gerekecek.  Ama bu yeni özellikleri görünce mutlaka denemek isteyeceksinizdir. En azından kendi bilgisayarınızda test edebilirsiniz. Yeni MVC (Model-View-Controller) özellikleri ile bazılarında Microsoft klasik asp ye geri mi dönüyor sorusunu oluşturabilir. HTML tarafı biraz benzese de bence Framework ün yeteneklerini kullanabiliyor olmamız eski asp den epeyce farklı olduğunu göstermektedir.

Bence MVC ile Microsoft kendini aşma çabalarında bir adım daha atmıştır. Ancak burada MVC nin arkasındaki isimleri ve bu isimlerin eskiden Microsoft'un boş bıraktığı özellikle ORM (Object Relational Mapping) alanındaki çalışmalarına değinmeden geçemeyeceğim. Bu isimler Rob Conery (.NET tarafındaki En İyi ORM Frameworku olan SubSonic in mimarı "SubSonic ile ilgili yazılara daha sonra yer vereceğim.") ve Phil Haack (SubText blog mimarı).  Her büyük şirket gibi Microsoft'ta bu alandaki eksiğini gidermek için çözümü bu kişileri bünyesine katmakta buldu. MVC trenine yeni katılan bu iki isim çok hız kattı. 

Benimde kendi kendime sorduğum, bunlar .NET Framework te neden hala yok sorularına Microsoft yanıt bulmaya başladı.

MVC ile gelen özelliklerden bazıları :

  • URL Routing (Bence URL-Rewriting)
  • LINQ to SQL Kullanabilirsiniz
  • Formları aynı sayfaya PostBack yapmak zorunda değilsiniz (Eskiden de istenirse yapılabiliyordu ama buradaki olay daha güzel)
  • PHP tarafında kod yazanların hep şikayet ettiği sayfada bir sürü event validation kodları ve viewstate ler var sözleri Microsoft tarafından duyulmuş olmalıki artık sadece (Pure) HTML  kodları var.
  • Kayıtları Düzenleme formları çok kolay oluşturulabiliyor.

Not: Demolar sırasında böyle bir hata alırsanız "Could not load file or assembly 'System.Web.Mvc' or one of its dependencies. Strong name signature could not be verified.  The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045)"

Benim derlediğim (Change Set  7061) System.Web.Mvc.dll(112,50 kb) i demo projeye ekleyebilirsiniz.

Yada CodePlex' ten yeni versiyonunu indirip System.Web.Mvc.dll i kendiniz derleyip bu yeni dll i demo projeye ekleyebilirsiniz.

 

ASP.NET MVC Preview 3 kurulum dosyasını indirmek için tıklayın.

ASP.NET MVC Preview 3 Northwind Demo Uygulamasını indirmek için tıklayın.

ASP.NET MVC Preview 3 videolarını izlemek için tıklayın (İngilizce)

Scott'un bu konuda yazdığı ayrıntılı yazı için tıklayın (İngilizce)



Paylaş

Taglar : , ,

Kategoriler : ASP.NET | Web

resimyok Mustafa ÖZCAN
Yazılım Geliştirici
E-mail Send mail

Bağış Yapın

Reklam

Online


Online Ziyaretçi : 3

Translate This Page

B l o g - E n g i n e