N szintű és távoli alkalmazások LINQ-val az SQL-hez
Létrehozhat n szintű vagy többrétegű alkalmazásokat, amelyek LINQ-t használnak az SQL-hez. A LINQ–SQL-adatkörnyezet, az entitásosztályok és a lekérdezésépítési logika általában a középső rétegben található adatelérési rétegként (DAL). Az üzleti logika és a nem állandó adatok teljes mértékben implementálhatók részleges osztályokban és entitások metódusaiban és az adatkörnyezetben, vagy külön osztályokban is implementálhatók.
Az ügyfél- vagy bemutatóréteg metódusokat hív meg a középső réteg távoli felületén, és az ezen a szinten lévő DAL metódusokra leképezett DataContext lekérdezéseket vagy tárolt eljárásokat hajt végre. A középső réteg az adatokat általában entitások vagy proxyobjektumok XML-reprezentációjaként adja vissza az ügyfeleknek.
A középső szinten az entitásokat az adatkörnyezet hozza létre, amely nyomon követi az állapotukat, és kezeli a halasztott betöltést az adatbázisból, és beszúrja a módosításokat az adatbázisba. Ezek az entitások "csatolva" vannak a DataContext
. Miután azonban az entitásokat szerializálással egy másik szintre küldik, le lesznek választva, ami azt jelenti, hogy az DataContext
entitások már nem követik az állapotukat. Azokat az entitásokat, amelyeket az ügyfél frissítésekért küld vissza, újra kell csatlakozni az adatkörnyezethez, mielőtt a LINQ az SQL-nek elküldené a módosításokat az adatbázisba. Az ügyfél feladata az eredeti értékek és/vagy időbélyegek visszaszolgáltatása a középső szintre, ha ezek szükségesek az optimista egyidejűség-ellenőrzésekhez.
Az ASP.NET alkalmazásokban a LinqDataSource legtöbb ilyen összetettség kezelhető. További információ: LinqDataSource Web Server Control – Áttekintés.
További források
A LINQ-t SQL-hez használó n szintű alkalmazások implementálásával kapcsolatos további információkért tekintse meg az alábbi témaköröket:
Az ADO.NET Adathalmazokat használó n szintű alkalmazásokkal kapcsolatos további információkért lásd : Adathalmazok használata az n szintű alkalmazásokban.