LINQ में Select और SelectMany के बीच क्या अंतर है?
सभी को नमस्कार! मैंने LINQ सीखना शुरू किया है और Select और SelectMany विधियों के बीच अंतर समझ नहीं पा रहा हूँ। मैंने दस्तावेज़ पढ़ा, लेकिन उदाहरण कुछ अमूर्त थे।
मेरे पास एक सरल class है:
```csharp
public class Student
{
public string Name { get; set; }
public List Grades { get; set; }
}
```
और छात्रों की एक list:
```csharp
var students = new List
{
new Student { Name = "Иван", Grades = new List { 5, 4, 3 } },
new Student { Name = "Мария", Grades = new List { 4, 5, 5 } }
};
```
जब मैं लिखता हूँ:
```csharp
var result = students.Select(s => s.Grades);
```
तो मुझे दो lists का collection मिलता है। और SelectMany के साथ क्या होगा? ऐसा लगता है कि यह भी वही है, लेकिन पूरी तरह से नहीं। मैंने प्रयास किया:
```csharp
var result2 = students.SelectMany(s => s.Grades);
```
और मुझे केवल numbers का collection मिला। लेकिन फिर SelectMany की आवश्यकता क्यों है? इसका उपयोग किन वास्तविक स्थितियों में करें? या यह सिर्फ syntactic sugar है?
कृपया सरल उदाहरणों के साथ समझाएं कि कब