N-warstwowe aplikacje danych .NET Framework — omówienie
Uwaga
Zestawy danych i powiązane klasy to starsze technologie .NET Framework z początku 2000 roku, które umożliwiają aplikacjom pracę z danymi w pamięci, gdy aplikacje są odłączone od bazy danych. Technologie te są szczególnie przydatne w przypadku aplikacji, które umożliwiają użytkownikom modyfikowanie danych i utrwalanie zmian z powrotem w bazie danych. Mimo że zestawy danych okazały się bardzo udaną technologią, zalecamy, aby nowe aplikacje platformy .NET używały platformy Entity Framework Core. Program Entity Framework zapewnia bardziej naturalny sposób pracy z danymi tabelarycznymi jako modelami obiektów i ma prostszy interfejs programowania.
Aplikacje danych n-warstwowe to aplikacje danych oddzielone wieloma warstwami. Nazywane również "aplikacjami rozproszonymi" i "wielowarstwowymi aplikacjami", aplikacje n-warstwowe oddzielają przetwarzanie na oddzielne warstwy rozproszone między klientem a serwerem. Podczas tworzenia aplikacji uzyskujących dostęp do danych należy jednoznacznie odseparować różne warstwy tworzące aplikację.
Typowa aplikacja n-warstwowa zawiera warstwę prezentacji, warstwę środkową i warstwę danych. Najłatwiejszym sposobem rozdzielenia różnych warstw w n-warstwowej aplikacji jest utworzenie dyskretnych projektów dla każdej warstwy, która ma się znaleźć w aplikacji. Na przykład warstwą prezentacji może być aplikacja środowiska Windows Forms, podczas gdy logiką dostępu do danych może być biblioteka klas umieszczona w warstwie środkowej. Ponadto warstwa prezentacji może komunikować się z logiką dostępu do danych w warstwie środkowej za pośrednictwem usługi, takiej jak usługa internetowa. Rozdzielanie składników aplikacji w oddzielne warstwy ułatwia konserwację i zwiększa skalowalność aplikacji. Wynika to z możliwości łatwiejszego wprowadzania nowych technologii do poszczególnych warstw, bez konieczności zmiany projektu całego rozwiązania. Dodatkowo zazwyczaj n-warstwowe aplikacje przechowują wrażliwe informacje w środkowej warstwie, która utrzymuje izolację od warstwy prezentacji.
Program Visual Studio zawiera kilka funkcji, które ułatwiają deweloperom tworzenie aplikacji n-warstwowych:
Zestaw danych zawiera właściwość Projektu Zestawu danych, która umożliwia oddzielenie zestawu danych (warstwy jednostki danych) i elementów TableAdapters (warstwa dostępu do danych) do dyskretnych projektów.
Narzędzia LINQ to SQL w programie Visual Studio udostępniają ustawienia służące do generowania klas DataContext i danych w oddzielnych przestrzeniach nazw. Takie rozwiązania pozwala logicznie rozdzielić warstwy dostępu do danych i jednostek danych.
LINQ to SQL udostępnia Attach metodę, która umożliwia łączenie obiektu DataContext z różnych warstw w aplikacji. Aby uzyskać więcej informacji, zobacz N-tier and remote applications with LINQ to SQL (Aplikacje N-warstwowe i zdalne za pomocą linQ to SQL).
Warstwa prezentacji
Warstwa prezentacji to warstwa , w której użytkownicy wchodzą w interakcje z aplikacją. Często zawiera także dodatkową logikę aplikacji. Oto typowe składniki warstwy prezentacji:
Składniki powiązania danych, takie jak BindingSource i BindingNavigator.
Reprezentacje obiektów danych, takie jak LINQ to SQL , do użycia w warstwie prezentacji.
Warstwa prezentacji zwykle uzyskuje dostęp do warstwy środkowej przy użyciu odwołania do usługi (na przykład usług Windows Communication Foundation Services i Usługi danych programu WCF w aplikacji programu Visual Studio). Warstwa prezentacji nie uzyskuje bezpośredniego dostępu do warstwy danych. Warstwa prezentacji komunikuje się z warstwą danych za pomocą składnika dostępu do danych w warstwie środkowej.
Warstwa środkowa
Warstwa środkowa to warstwa , która jest używana przez warstwę prezentacji i warstwę danych do komunikowania się ze sobą. Oto typowe składniki warstwy środkowej:
Logika biznesowa, taka jak reguły biznesowe i mechanizmy sprawdzania poprawności danych.
Składniki i logika dostępu do danych, w tym:
Reprezentacje obiektów danych, takie jak LINQ to SQL , klasy jednostek.
Wspólne usługi aplikacji, takie jak uwierzytelnianie, autoryzacja i personalizacja.
Na ilustracji poniżej widać funkcje i technologie, które są dostępne w programie Visual Studio i mogą być umieszczone w środkowej warstwie aplikacji n-warstwowej.
Warstwa środkowa
Warstwa środkowa zazwyczaj łączy się z warstwą danych przy użyciu połączenia danych. To połączenie danych jest zazwyczaj przechowywane w składniku dostępu do danych.
Warstwa danych
Warstwa danych to zasadniczo serwer, który przechowuje dane aplikacji (na przykład serwer z programem SQL Server).
Na ilustracji poniżej widać funkcje i technologie, które są dostępne w programie Visual Studio i mogą być umieszczone w warstwie danych aplikacji n-warstwowej.
Warstwa danych
Warstwa danych nie może być dostępna bezpośrednio z klienta w warstwie prezentacji. Zamiast tego składnik dostępu do danych w warstwie środkowej obsługuje komunikację między warstwami prezentacji i danych.
Pomoc dotycząca programowania n-warstwowego
Poniższe tematy zawierają informacje dotyczące pracy z aplikacjami n-warstwowymi:
Rozdzielanie zestawów danych i adapterów TableAdapter do różnych projektów
Przewodnik: tworzenie aplikacji danych n-warstwowej
N-warstwowe i zdalne aplikacje z LINQ to SQL