Niebezpieczeństwa w używaniu metody Include podczas budowania zapytań
Kiedy zaczynamy zabawę z Entity Framework'iem w .NET'cie wszystko wydaje się na prawdę proste. Piszemy co chcemy wyciągnąć za pomocą składni LINQ robimy np. wykonujemy zapytanie i już mamy wyciągnięte dane. Lecz do końca nie jest tak różowo jak się nam wydaje. Entity Framework ma taką naturę, że jeśli przestaniemy mu patrzeć na ręce bardzo szybko może nas wprowadzić w poważne tarapaty. Bardzo dobrym pomysłem jest zainstalowanie sobie darmowego Express Profiler i podglądanie jakie zapytania zostają wysyłane do bazy. Czasem na prawdę można się przestraszyć jakie potwory musi przetrawić baza. Począwszy od kilku zagnieżdżeń aż po kilometrowe SELECTy. Trzeba uważać w szczególności na metodę Include, która jest super narzędziem, lecz należy dołączać STARANNIE wyselekcjonowane dane. Trzeba uważać na długie ścieżki. Zamiast pisać
...Include("Osoba").Include("Osoba.Kraj").Include("Osoba.Kraj.Zdjecie")
lepiej jest:
.Include("Osoba.Kraj.Zdjecie")
Wygenerowane zapytanie jest mniejsze a im mniejsze tym lepsze. Dlatego też jeśli to możliwe obcinać SELECTy przez określenie jakie kolumny nas interesują .Select(p => .....)
1 komentarz:
Super wpis
__________________
https://www.aptusshop.pl/sklepy-internetowe-szczecin.php
Prześlij komentarz