22 parimat LINQ-i intervjuu küsimust ja vastust (2024. aasta värskendus)
Siin on LINQ intervjuu küsimused ja vastused nii värsketele kui ka kogenud kandidaatidele unistuste töökoha saamiseks.
1) Selgitage, mis on LINQ? Miks seda nõutakse?
Language Integrated Query ehk LINQ on standardsete päringuoperaatorite kogum, mis pakub päringuvõimalusi NET-i raamistiku keelde, näiteks C#, VB.NET. LINQ on vajalik, kuna see ületab lõhe andmemaailma ja objektide maailma vahel.
Tasuta PDF-i allalaadimine: LINQ-intervjuu küsimused ja vastused
2) Millised on LINQ tüübid?
- LINQ objektidele
- LINQ to XML
- LINQ andmekogusse
- LINQ SQL-ile
- LINQ üksustele
3) Selgitage, kuidas on LINQ kasulik kui salvestatud protseduurid?
- Silumine: Salvestatud protseduuri on raske siluda, kuid LINQ on selle osa . NET, saab päringute silumiseks kasutada visuaalstuudio silurit
- Kasutamine: Salvestatud protseduuride jaoks tuleks pakkuda täiendav skript, kuid LINQ-ga kompileeritakse kõik üheks DLL-iks, seega on juurutamine lihtne
- Tüüp Ohutus: LINQ on tüübikindel, seega kontrollitakse kompileerimise ajal päringute vigu
4) Loetlege LINQ-i kolm põhikomponenti? Selgitage, mis on faili laiend, kui kasutatakse LINQ to SQL-i?
LINQ-i kolm peamist komponenti on
- Tavalised päringuoperaatorid
- Keelelaiendid
- LINQ pakkujad
Kasutatava faili laiend on .dbml
5) Defineerige, mis on Kus- ja Let-klausel?
- Kus klausel: võimaldab lisada päringule mõningaid tingimusfiltreid.
- Laske klausel: võimaldab defineerida muutuja ja määrata sellele andmeväärtustest arvutatud väärtuse.
6) Selgitage, miks SELECT-klausel tuleb LINQ-is FROM-klausli järel?
Teiste programmeerimiskeelte ja C# puhul kasutatakse LINQ-d, see nõuab kõigi muutujate esmast deklareerimist. LINQ-päringu klausel „FROM” määrab kirjete valimise vahemiku või tingimused. Seega peab klausel FROM ilmuma LINQis enne SELECT.
7) Selgitage, mis on faili System.XML.Xlinq.dll kasu?
System.Data.Dlinq.dll pakub LINQ to SQL-iga töötamiseks funktsioone
8) Selgitage, mis on LINQ-is lambda-avaldised?
Lambda avaldist nimetatakse ainulaadseks funktsiooniks, mida kasutatakse delegaatide või avaldisepuu tüüpide moodustamiseks, kus parem pool on väljund ja vasak pool meetodi sisend. Eriti LINQ-päringute kirjutamiseks kasutatakse Lambda avaldist.
9) Selgitage, kuidas saab andmebaasidega LINQ-i kasutada?
LINQ toetab XML-i, SQL-i, andmekogumit ja objekte. LINQ-i kaudu objektidele või LINQ-i andmekogumitele saab LINQ-i kasutada teiste andmebaasidega. Objektid ja andmekogumid hoolitsevad andmebaasi konkreetsete toimingute eest ja LINQ peab tegelema ainult nende objektidega, mitte otse andmebaasitoimingutega.
10) Selgitage, mis vahe on Skip() ja SkipWhile() laiendusmeetoditel?
- Jäta vahele (): See võtab täisarvu argumendi ja antud IEnumerablest jätab see vahele n ülemist arvu
- Jäta vahele (): See jätkab elementide vahelejätmist seni, kuni sisendtingimus on tõene. Kui tingimus on vale, tagastab see kõik ülejäänud elemendid
11) Kuidas leiate LINQ-is elemendi indeksi, kasutades kus () koos Lambda avaldistega?
Elemendi indeksi leidmiseks, kasutades kus () lambda-avaldisega Kus ( ( i, ix ) => i == ix);
12) Selgitage, kuidas saate delegaadile lambda-avaldist määrata?
Delegaadile lambda-avaldise määramiseks
Delegate int del (int i); Del myDelegate=x=>x*x; Intj = myDelegate (4); //j=16
13) Selgitage, mis vahe on Statement Lambda ja Expression Lambda vahel?
- Expressioni lambdasid kasutatakse laialdaselt ekspressioonipuude ehitamisel
- Avaldisepuude loomiseks ei saa kasutada avaldust lambdasid
14) Mainige, milline on DataContext klasside roll LINQ-is?
DataContext klass toimib sillana SQL Server andmebaas ja LINQ to SQL. Andmebaasi juurdepääsuks ja ka andmebaasis olevate andmete muutmiseks sisaldab see ühendusstringi ja funktsioone.
15) Selgitage, mis on LINQ-päringuavaldised?
Päringuavaldis pole midagi muud kui LINQ-päring. See on päringuklauslite kombinatsioon, mis tuvastab päringu andmeallikad. See sisaldab teavet sortimiseks, filtreerimiseks, rühmitamiseks või ühendamiseks, mida lähteandmetele rakendada. See määrab, millist teavet tuleks andmeallikast hankida.CV.
16) Selgitage, mis on koostatud päringud?
Kompileeritud LINQ-päringutes salvestatakse plaan vahemällu staatilises klassis ja staatiline klass on globaalne vahemälu. Päringuplaani nullist koostamise asemel koostab LINQ plaani, kasutades klassiobjekti.
17) Selgitage, kui kasulikud on standardsed päringuoperaatorid LINQ-is?
LINQ-is kasulikud standardsed päringuoperaatorid on
- Hankige kogus olevate elementide koguarv
- Tellige kogumise tulemused
- Rühmitamine
- Keskmise arvutamine
- Kahe kollektsiooni ühendamine sobivate võtmete alusel
- Filtreerige tulemused
18) Selgitage, mis on LINQ-i pakkujate eesmärk LINQ-is?
LINQ-i pakkujad on klassid, mis võtavad LINQ-päringu, mis genereerib meetodi, mis täidab samaväärse päringu konkreetse andmeallika suhtes.
19) Selgitage, kuidas saate LINQ-iga ühe rea alla laadida?
LINQ-iga ühe rea toomiseks vajame
Public User GetUser (string userName) { DBNameDataContext myDB = new DBNameDataContext ( ) ; User user = myDB. Users. Single ( u, u.UserName => userName ); Return user; }
20) Millises lauses täidetakse LINQ-päring?
VB-s käivitatakse LINQ-päring iga avalduse jaoks ja C# foreach-lauses.
21) Selgitage, mis on "LINQ objektidele"?
Kui LINQ esitab päringu mis tahes IEnumerable(Of T) kollektsiooni või IEnumerable kohta otse ilma vahepealset LINQ-pakkujat või API-d, näiteks LINQ to SQL või LINQ to XML nimetatakse "objektide lingiks".
22) Selgitage, kuidas saate eristada LINQ-i teisendusoperaatorit “ToDictionary” ja “IEnumerable”?
Konversioonitüübi probleemide lahendamiseks kasutatakse teisendusoperaatorit “IEnumerable” ja “ToDictionary”.
Konversioonioperaator “ToDictionary” on sõnastiku (k, T) eksemplar. Predikaat "keySelector" tunneb ära iga üksuse võtme, samas kui "elementSelector" kasutatakse iga üksiku üksuse ekstraheerimiseks, kui see on antud.
“IEnumerable” laiendusmeetod on.AsEnumerable. AsEnumerable tagastab lähtejada lihtsalt IEnumerable tüüpi objektina .
Need intervjuu küsimused aitavad ka teie viva (suuline)
Väga hea artikkel hea selgitusega.
Kahjuks otsib Google palju neid poolikuid saite, mis on täielik ajaraiskamine. Kui loete seda, otsige LINQ-i kohta lisateabe saamiseks mõni muu sait!
nõus. see oli selle artikli lugemise täielik ajaraiskamine