Udostępnij za pośrednictwem


N-warstwowe i zdalne aplikacje z użyciem LINQ to SQL

Możesz utworzyć aplikacje n-warstwowe lub wielowarstwowe, które używają linQ to SQL. Zazwyczaj kontekst danych LINQ to SQL, klasy jednostek i logika konstruowania zapytań znajdują się w warstwie środkowej jako warstwa dostępu do danych (DAL). Logika biznesowa i wszelkie dane nietrwale mogą być implementowane całkowicie w klasach częściowych i metodach jednostek i kontekstu danych lub mogą być implementowane w oddzielnych klasach.

Warstwa klienta lub prezentacji wywołuje metody w interfejsie zdalnym warstwy środkowej, a dal w tej warstwie będzie wykonywać zapytania lub procedury składowane mapowane na DataContext metody. Warstwa środkowa zwraca dane do klientów zazwyczaj jako reprezentacje XML jednostek lub obiektów serwera proxy.

W warstwie środkowej jednostki są tworzone przez kontekst danych, który śledzi ich stan i zarządza odroczonym ładowaniem i przesyłaniem zmian do bazy danych. Te jednostki są "dołączone" do elementu DataContext. Jednak po wysłaniu jednostek do innej warstwy za pomocą serializacji stają się odłączone, co oznacza, że DataContext element nie śledzi już ich stanu. Jednostki, które klient wysyła z powrotem w celu aktualizacji, muszą zostać ponownie dołączone do kontekstu danych, zanim program LINQ to SQL będzie mógł przesłać zmiany do bazy danych. Klient jest odpowiedzialny za dostarczanie oryginalnych wartości i/lub sygnatur czasowych z powrotem do warstwy środkowej, jeśli są one wymagane do optymistycznych testów współbieżności.

W ASP.NET aplikacjach LinqDataSource zarządzanie największą złożonością. Aby uzyskać więcej informacji, zobacz LinqDataSource Web Server Control Overview (Omówienie kontroli serwera sieci Web LinqDataSource).

Dodatkowe zasoby

Aby uzyskać więcej informacji na temat implementowania aplikacji n-warstwowych korzystających z linQ to SQL, zobacz następujące tematy:

Aby uzyskać więcej informacji na temat aplikacji n-warstwowych korzystających z zestawów danych ADO.NET, zobacz Praca z zestawami danych w aplikacjach n-warstwowych.

Zobacz też