Freigeben über


N-schichtige Anwendungen und Remoteanwendungen mit LINQ to SQL

Sie können n-stufige oder mehrstufige Anwendungen erstellen, die LINQ to SQL verwenden. In der Regel befinden sich die LINQ to SQL-Datenkontext, Entitätsklassen und Abfrageerstellungslogik auf der mittleren Ebene als Datenzugriffsschicht (DAL). Geschäftslogik und alle nicht persistenten Daten können vollständig in partiellen Klassen und Methoden von Entitäten und dem Datenkontext implementiert werden, oder sie kann in separaten Klassen implementiert werden.

Die Client- oder Präsentationsebene ruft Methoden der Remoteschnittstelle der mittleren Ebene auf, und die Datenzugriffsschicht (DAL) dieser Ebene führt Abfragen oder gespeicherte Prozeduren aus, die den DataContext Methoden zugeordnet sind. Die mittlere Ebene gibt die Daten in der Regel als XML-Darstellungen von Entitäten oder Proxyobjekten an Clients zurück.

Auf der mittleren Ebene werden Entitäten vom Datenkontext erstellt, der deren Status nachverfolgt und das verzögerte Laden sowie die Übermittlung von Änderungen an die Datenbank verwaltet. Diese Entitäten sind mit der DataContext verbunden. Nachdem die Entitäten jedoch durch Serialisierung an eine andere Ebene gesendet wurden, sind sie nicht mehr verbunden, was bedeutet, dass der DataContext ihren Zustand nicht mehr überwacht. Entitäten, die der Client zur Aktualisierung zurücksendet, müssen an den Datenkontext angefügt werden, bevor LINQ to SQL die Änderungen an die Datenbank übermitteln kann. Der Client ist dafür verantwortlich, originale Werte und/oder Zeitstempel zurück auf die mittlere Ebene bereitzustellen, wenn diese für optimistische Parallelitätsprüfungen erforderlich sind.

In ASP.NET Anwendungen verwaltet der LinqDataSource Großteil dieser Komplexität. Weitere Informationen finden Sie unter LinqDataSource Web Server Control Overview.

Zusätzliche Ressourcen

Weitere Informationen zum Implementieren von n-Ebenen-Anwendungen, die LINQ to SQL verwenden, finden Sie in den folgenden Themen:

Weitere Informationen zu n-Ebenen-Anwendungen, die ADO.NET DataSets verwenden, finden Sie unter Arbeiten mit Datasets in n-Ebenen-Anwendungen.

Siehe auch