যেহেতু আমি এখানে উত্তরটি সন্ধান করতে পারি নি যা আমি সবচেয়ে ভাল সমাধান হিসাবে বিবেচনা করি, এখানে আমার উপায়:
ডেটা পরিবর্তন করতে "নির্বাচন করুন" ব্যবহার করা সম্ভব তবে কেবল একটি কৌশল দ্বারা। যাইহোক, "নির্বাচন করুন" এর জন্য তৈরি হয় না। এটি "টোলিস্ট" ব্যবহার করার সাথে সাথে কেবলমাত্র সম্পাদনটি সম্পাদন করে, কারণ লিনক ডেটা প্রয়োজন হওয়ার আগেই সম্পাদন করে না। যাইহোক, সর্বোত্তম সমাধানটি "ফোরচ" ব্যবহার করা। নিম্নলিখিত কোডে, আপনি দেখতে পারেন:
class Person
{
public int Age;
}
class Program
{
private static void Main(string[] args)
{
var persons = new List<Person>(new[] {new Person {Age = 20}, new Person {Age = 22}});
PrintPersons(persons);
//this doesn't work:
persons.Select(p =>
{
p.Age++;
return p;
});
PrintPersons(persons);
//with "ToList" it works
persons.Select(p =>
{
p.Age++;
return p;
}).ToList();
PrintPersons(persons);
//This is the best solution
persons.ForEach(p =>
{
p.Age++;
});
PrintPersons(persons);
Console.ReadLine();
}
private static void PrintPersons(List<Person> persons)
{
Console.WriteLine("================");
foreach (var person in persons)
{
Console.WriteLine("Age: {0}", person.Age);
;
}
}
}
"ফোরচ" করার আগে আপনি একটি লিনাক নির্বাচনও করতে পারেন ...