Elemtulajdonságok részhalmazainak visszaadása egy lekérdezésben (C# programozási útmutató)
Használjon névtelen típust egy lekérdezési kifejezésben, ha mindkét feltétel teljesül:
Csak az egyes forráselemek tulajdonságainak egy részét szeretné visszaadni.
A lekérdezés eredményeit nem kell a lekérdezés végrehajtásának metódusán kívül tárolnia.
Ha csak egy tulajdonságot vagy mezőt szeretne visszaadni az egyes forráselemekből, akkor egyszerűen használhatja a pont operátort a select
záradékban. Ha például csak az ID
egyes student
elemeket szeretné visszaadni, írja be a záradékot az select
alábbiak szerint:
select student.ID;
Példa
Az alábbi példa bemutatja, hogyan lehet névtelen típust használni az egyes forráselemek tulajdonságainak csak egy részhalmazának visszaadásához, amely megfelel a megadott feltételnek.
private static void QueryByScore()
{
// Create the query. var is required because
// the query produces a sequence of anonymous types.
var queryHighScores =
from student in students
where student.ExamScores[0] > 95
select new { student.FirstName, student.LastName };
// Execute the query.
foreach (var obj in queryHighScores)
{
// The anonymous type's properties were not named. Therefore
// they have the same names as the Student properties.
Console.WriteLine(obj.FirstName + ", " + obj.LastName);
}
}
/* Output:
Adams, Terry
Fakhouri, Fadi
Garcia, Cesar
Omelchenko, Svetlana
Zabokritski, Eugene
*/
Vegye figyelembe, hogy a névtelen típus a forráselem nevét használja a tulajdonságaihoz, ha nincsenek megadva nevek. Ha új neveket szeretne adni a névtelen típusú tulajdonságoknak, írja be a select
következő utasítást:
select new { First = student.FirstName, Last = student.LastName };
Ha ezt az előző példában próbálja ki, az utasításnak Console.WriteLine
a következőt is módosítania kell:
Console.WriteLine(student.First + " " + student.Last);
A kód összeállítása
A kód futtatásához másolja és illessze be az osztályt egy C#-konzolalkalmazásba a using
System.Linq irányelvével.
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: