close

ADO.NET

Navigasyona git Aramaya git

ADO.NET (ActiveX Data Object for .NET), bir veritabanında veya diğer kaynaklarda ( Microsoft SQL Server , Microsoft Access , Microsoft Excel , Microsoft Outlook , Microsoft Exchange , Oracle , OLE DB ) depolanan verilere erişim ve bunların yönetimini sağlayan bir teknolojidir. , ODBC , XML , metin dosyaları) [1] , .NET Framework'ü temel alır ve .NET Framework 2.0'da bulunur , bir dizi kitaplıktır [2] . ADO teknolojisinden farklı olarakÖncelikli olarak sıkı bir şekilde bağlanmış istemci-sunucu sistemleri için tasarlanan ADO.NET, DataSet nesnelerini kullanarak bağımsız çalışmaya daha fazla odaklanmıştır. DataSet nesneleri, her biri bir dizi satır ve sütun içeren ilgili veri tablolarının yerel kopyalarını temsil eder. DataSet nesneleri, çağıran bir derlemenin (bir web sayfası veya masaüstü bilgisayarda çalışan bir program gibi) DataSet'in içeriğiyle çalışmasına, bir veri kaynağına bağlantı gerektirmeden değiştirmesine ve değiştirilen veri bloklarını işlenmek üzere geri göndermesine izin verir. uygun veri adaptörü ile. Ancak klasik ADO ve ADO.NET arasındaki belki de en temel fark , ADO.NET'in yönetilen bir kod kitaplığı olması ve bu nedenle yönetilen herhangi bir kitaplıkla aynı kurallara tabi olmasıdır. ADO.NET'i oluşturan türler, CLR bellek yönetimi protokolünü kullanır, aynı tür sisteme ( sınıflar , arabirimler , numaralandırmalar , yapılar ve temsilciler ) aittir ve herhangi bir .NET dili kullanılarak erişilebilir . ADO.NET sınıfları, System.Data.dll derlemesindedir.

Veri sağlayıcılar

ADO.NET teknolojisi, programcıyı farklı üreticilerin veritabanı yapılarını incelemekten yalıtacak şekilde oluşturulmuştur ve herhangi bir DBMS için adaptörler oluşturmanıza izin veren belirli bir DBMS ile çalışma mekanizmasını kapsayan veritabanı sağlayıcıları (veri sağlayıcıları) sunar. ve özelliklerini tam olarak kullanın. Farklı veri kaynaklarıyla çalışmak için aynı veri türlerini kullanmak, farklı üreticilerin veritabanlarıyla çalışmak için ortak bir yaklaşıma (evrenselleştirme) sahip olmak için böyle bir soyutlama yapıldı, böylece ADO.NET teknolojisi CLR tarafından destekleniyor [3] . .

Takılabilir katman

Bu seviyede veri tabanları ile çalışma, bağlantı nesneleri, veri okuyucu nesneleri ve istenilen VTYS için tasarlanmış bir veri sağlayıcı aracılığıyla gerçekleştirilir . Veri elde etmek için aşağıdaki adımlar izlenir.

  • Bir bağlantı nesnesi oluşturma, yapılandırma ve açma.
  • Yapıcı bağımsız değişkeninde veya Connection özelliği aracılığıyla bir bağlantı nesnesini belirten bir komut nesnesi oluşturun ve yapılandırın.
  • Yapılandırılan komut nesnesinin ExecuteReader() yönteminin çağrılması.
  • Veri okuyucu nesnesinin Read() yöntemiyle her girişi işleme.

Veri okuyucular, ileri yönde okunacak bir veri akışı sağlar. Okuma, her kayıtta gerçekleşir. Bu nedenle, okuma nesneleri yalnızca seçme isteklerini işler. Veritabanına bir bağlantı açmak ve kapatmak tamamen programcının sorumluluğundadır.

Çevrimdışı seviye

Bağımsız ADO.NET katmanı, bir nesne modeli kullanarak ilişkisel verileri belleğe eşlemenize olanak tanır. System.Data'dan gelen veri türleri, yalnızca satır ve sütunların görüntülenmesini değil, aynı zamanda tablolar, birincil anahtarlar vb. arasındaki ilişkileri de yeniden üretir. Veriler belleğe eşlendiğinden, bağlantı DBMS zamanını almaz, okuma ve güncelleme sırasında otomatik olarak bağlanır ve bağlantıyı keser veri, özerk katman programcıdan fazladan işi kaldırır. Ama bu seviyenin bir dezavantajı var, veritabanından 20.000 kayıt okumanız gerektiğini düşünün ve offline seviye kullanırken tüm bunlar uygulamanın hafızasına düşecek, çok mantıklı bir kullanım değil, işte eklenti seviyesi buraya geliyor. her şeyi sırayla sayan kurtarma.

Varlık Çerçevesi

ADO.NET mimarisinde fiziksel veri yapısına bir bağlama vardır, bu nedenle veritabanına erişmek için kod yazarken tabloların ve ilişkilerin şemalarını hatırlamanız gerekir. Kod yazmayı basitleştirmek ve otomatik olarak sürdürmek için Microsoft, soyutlamayı nesne modelinde yeni bir düzeye taşıyan Entity Framework'ü geliştirdi. Bu, veri tabanı yapısını uygulamanın iş nesnelerine eşlemeyi mümkün kıldı, bunun bir sonucu olarak, sıradan dil nesnelerinde olduğu gibi verilerle çalışmak mümkün oldu. Varlıklar, bir etki alanına eşlenen fiziksel bir veritabanının kavramsal bir modelidir. Resmi olarak konuşursak, bu model Varlık Veri Modeli (EDM) olarak adlandırılır. EDM, fiziksel bir veritabanına eşlenen bir dizi istemci tarafı sınıftır. Ancak, varlıkların isme bağlı olarak göründüğü gibi doğrudan veritabanı şemasına eşlenmesi gerekmediğini anlamanız gerekir. Varlık sınıfları ihtiyaçlarınıza uyacak şekilde yeniden yapılandırılabilir ve Entity Framework çalışma zamanı bu benzersiz adları doğru veritabanı şemasıyla eşler.

Ayrıca

Notlar

  1. B. Hamilton. ADO.NET tarif kitabı. Profesyoneller için. - St.Petersburg. : Peter, 2005. - 576 s. — ISBN 5-469-00239-X .
  2. Seppa D. Microsoft ADO.NET. - Moskova: Yayıncılık ve Ticaret Evi "Rus Baskısı", 2003. - 640 s. — ISBN 5-7502-0223-2 .
  3. Sean Wildermus. ADO.NET'in pratik kullanımı, İnternetteki verilere erişim. - Moskova: Williams, 2003. - 288 s. — ISBN 5-8459-0450-1 .

Edebiyat

  • Sahil Malik. Profesyoneller için Microsoft ADO.NET 2.0 = Pro ADO.NET 2.0. - M .: "Williams" , 2006. - S. 560. - ISBN 1-59059-512-2 .
  • Andrew Troelsen. C#2010 Programlama Dili ve .NET 4.0 platformu = PRO C# 2010 VE .NET 4 PLATFORMU. - 5. baskı. - Moskova • St. Petersburg • Kiev: "Williams" , 2011. - S. 1392. - ISBN 978-5-8459-1682-2 .

Bağlantılar