Az adatok kitermelésének áttekintése
Az adatkivonás végrehajtása a következő.
Az objektummodell segítségével határozza meg a letöltendő objektumot, vagy az objektumot, ahonnan az adatokat kivonja.
Mind a LINQ szintaxisformák, a lekérdezési szintaxis, mind az eljárásszintaxis egy menedzselt ügyfél objektummodellben használhatók az egyes objektumok, egy adott objektum tulajdonságainak vagy felsorolt objektumgyűjteményeinek betöltésére.
Ha a LINQ-ot a kliens objektummodellhez tartozó lekérdezések végrehajtására használja, akkor figyelembe kell vennie a következő két tényezőt:
Amikor LINQ használatával hoz létre lekérdezéseket egy ügyfél objektummodellhez, akkor a LINQ a Objects szolgáltatót használja. de nem a LINQ a SharePoint szolgáltatóhoz. Ez csak akkor használható, ha a kiszolgálóoldali objektummodell kódját írja.
Ha a lekérdezés visszaadja a listaelemek egy részhalmazát, hatékonyabb a CAML lekérdezés használata a LINQ helyett. Ennek oka, hogy az összes listaelem átkerül a tartalom adatbázisból az elülső webkiszolgálóra, és betöltötte a memóriába. Csak akkor alkalmazzák a LINQ szűrőt. CAML lekérdezés használata esetén a szűrés az adatbázis-kiszolgálón történik. Ez csak a lekérdezésekre vonatkozik, amelyek szűrik a listaelemeket. A LINQ lekérdezések egyéb típusai, például a webhelylisták egy részhalmazát visszakérő lekérdezések hatékonyabbak.
A lekérdezési szintaxis csak a LoadQuery () metódusban használható. és két lépésre van szükség - a lekérdezés kifejezés definiálásához és a lekérdezés eredményének lekéréséhez. Ez a folyamat a következő kódmintában jelenik meg, amely a megadott fejlécről rendelkező aktuális webhely összes listáját visszaadja.
A kért lekérdezésben a lekérdezés külön áll a visszajuttatott eredményekből. A helyszíni betöltésektől eltérően az objektum azonosítása nem tárolódik a kért rendszerindításkor, ezért a kódnak önmagában is meg kell adnia a visszaküldött objektumokat. A következő példában a lekérdezési szintaxis a webhely összes listáját visszaadja.
További példák és információk a SharePoint Foundation Silverlight objektummodelljével kapcsolatos adatok lekéréséről: A Silverlight objektummodell használata.