Aracılığıyla paylaş


N katmanlı .NET Framework veri uygulamalarına genel bakış

Not

Veri kümeleri ve ilgili sınıflar, uygulamaların veritabanıyla bağlantısı kesilirken uygulamaların bellekteki verilerle çalışmasını sağlayan 2000'lerin başlarındaki eski .NET Framework teknolojileridir. Bunlar özellikle kullanıcıların verileri değiştirmesine ve değişiklikleri veritabanında kalıcı hale getirebilmesine olanak tanıyan uygulamalar için kullanışlıdır. Veri kümelerinin çok başarılı bir teknoloji olduğu kanıtlanmış olsa da, yeni .NET uygulamalarının Entity Framework Core kullanmasını öneririz. Entity Framework, tablosal verilerle nesne modelleri olarak çalışmak için daha doğal bir yol sağlar ve daha basit bir programlama arabirimine sahiptir.

N katmanlı veri uygulamaları, birden çok katmana ayrılmış veri uygulamalarıdır. "Dağıtılmış uygulamalar" ve "çok katmanlı uygulamalar" olarak da adlandırılan n katmanlı uygulamalar, işlemeyi istemci ile sunucu arasında dağıtılan ayrık katmanlara ayırır. Verilere erişen uygulamalar geliştirirken, uygulamayı oluşturan çeşitli katmanlar arasında net bir ayrım yapmanız gerekir.

Tipik bir n katmanlı uygulama sunu katmanı, orta katman ve veri katmanı içerir. N katmanlı bir uygulamada çeşitli katmanları ayırmanın en kolay yolu, uygulamanıza eklemek istediğiniz her katman için ayrı projeler oluşturmaktır. Örneğin, sunu katmanı bir Windows Forms uygulaması, veri erişim mantığı ise orta katmanda bulunan bir sınıf kitaplığı olabilir. Ayrıca sunu katmanı, orta katmandaki veri erişim mantığıyla web hizmeti gibi bir hizmet aracılığıyla iletişim kurabilir. Uygulama bileşenlerini ayrı katmanlara ayırmak, uygulamanın sürdürülebilirliğini ve ölçeklenebilirliğini artırır. Bunu, çözümün tamamını yeniden tasarlama gereksinimi olmadan tek bir katmana uygulanabilen yeni teknolojilerin daha kolay benimsenmesini sağlayarak yapar. Buna ek olarak, n katmanlı uygulamalar genellikle hassas bilgileri orta katmanda depolar ve bu da sunu katmanından yalıtım sağlar.

Visual Studio, geliştiricilerin n katmanlı uygulamalar oluşturmasına yardımcı olacak çeşitli özellikler içerir:

  • Veri kümesi, veri kümesini (veri varlığı katmanı) ve TableAdapters'ı (veri erişim katmanı) ayrık projelere ayırmanızı sağlayan bir DataSet Projesi özelliği sağlar.

  • Visual Studio'daki LINQ to SQL araçları, DataContext ve veri sınıflarını ayrı ad alanlarına oluşturmaya yönelik ayarlar sağlar. Bu, veri erişimi ve veri varlığı katmanlarının mantıksal ayrımını sağlar.

  • LINQ to SQL , bir uygulamadaki Attach farklı katmanlardan DataContext'i bir araya getirmenizi sağlayan yöntemi sağlar. Daha fazla bilgi için bkz . LINQ to SQL ile N Katmanlı ve uzak uygulamalar.

Sunum katmanı

Sunu katmanı , kullanıcıların bir uygulamayla etkileşimde bulunduğu katmandır. Genellikle ek uygulama mantığı da içerir. Tipik sunu katmanı bileşenleri şunlardır:

Sunu katmanı genellikle bir hizmet başvurusu (örneğin, Bir Windows Communication Foundation Services ve Visual Studio uygulamasında WCF Veri Hizmetleri) kullanarak orta katmana erişir. Sunu katmanı veri katmanına doğrudan erişmez. Sunu katmanı, orta katmandaki veri erişim bileşeni yoluyla veri katmanıyla iletişim kurar.

Orta katman

Orta katman, sunu katmanının ve veri katmanının birbirleriyle iletişim kurmak için kullandığı katmandır. Tipik orta katman bileşenleri şunlardır:

Aşağıdaki çizimde Visual Studio'da kullanılabilen ve n katmanlı bir uygulamanın orta katmanına sığabilecek özellikler ve teknolojiler gösterilmektedir.

Orta katman bileşenleri

Orta katman

Orta katman genellikle bir veri bağlantısı kullanarak veri katmanına bağlanır. Bu veri bağlantısı genellikle veri erişim bileşeninde depolanır.

Veri katmanı

Veri katmanı temelde bir uygulamanın verilerini (örneğin, SQL Server çalıştıran bir sunucu) depolayan sunucudur.

Aşağıdaki çizimde Visual Studio'da kullanılabilen ve n katmanlı bir uygulamanın veri katmanına sığabilecek özellikler ve teknolojiler gösterilmektedir.

Veri katmanı bileşenleri

Veri katmanı

Veri katmanına doğrudan sunu katmanındaki istemciden erişilemez. Bunun yerine, orta katmandaki veri erişim bileşeni, sunu ve veri katmanları arasındaki iletişim için kullanılır.

N katmanlı geliştirme yardımı

Aşağıdaki konular n katmanlı uygulamalarla çalışma hakkında bilgi sağlar:

Veri kümeleri ile TableAdapter’ları farklı projelere ayırma

İzlenecek yol: N katmanlı veri uygulaması oluşturma

LINQ to SQL ile N katmanlı ve uzak uygulamalar

Ayrıca bkz.