![Trending Articles on Technical and Non Technical topics](/images/trending_categories.jpeg)
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How can we update the values of a collection using LINQ in C#?
If the collection is a List, then we can make use of ForEach extension method which is available as part of LINQ.
Example
using System; using System.Collections.Generic; namespace DemoApplication { class Program { static void Main(string[] args) { List<Fruit> fruits = new List<Fruit> { new Fruit { Name = "Apple", Size = "Small" }, new Fruit { Name = "Orange", Size = "Small" } }; foreach(var fruit in fruits) { Console.WriteLine($"Fruit Details Before Update. {fruit.Name}, {fruit.Size}"); } fruits.ForEach(fruit => { fruit.Size = "Large"; }); foreach (var fruit in fruits) { Console.WriteLine($"Fruit Details After Update. {fruit.Name}, {fruit.Size}"); } Console.ReadLine(); } } public class Fruit { public string Name { get; set; } public string Size { get; set; } } }
Output
The output of the above code is
Fruit Details Before Update. Apple, Small Fruit Details Before Update. Orange, Small Fruit Details After Update. Apple, Large Fruit Details After Update. Orange, Large
If we want to update the list items based on a condition, we can make use of Where() clause.
Example
using System; using System.Collections.Generic; using System.Linq; namespace DemoApplication { class Program { static void Main(string[] args) { IEnumerable<Fruit> fruits = new List<Fruit> { new Fruit { Name = "Apple", Size = "Small" }, new Fruit { Name = "Orange", Size = "Small" }, new Fruit { Name = "Mango", Size = "Medium" } }; foreach(var fruit in fruits) { Console.WriteLine($"Fruit Details Before Update. {fruit.Name}, {fruit.Size}"); } foreach (var fruit in fruits.Where(w => w.Size == "Small")) { fruit.Size = "Large"; } foreach (var fruit in fruits) { Console.WriteLine($"Fruit Details After Update. {fruit.Name}, {fruit.Size}"); } Console.ReadLine(); } } public class Fruit { public string Name { get; set; } public string Size { get; set; } } }
Output
The output of the above code is
Fruit Details Before Update. Apple, Small Fruit Details Before Update. Orange, Small Fruit Details Before Update. Mango, Medium Fruit Details After Update. Apple, Large Fruit Details After Update. Orange, Large Fruit Details After Update. Mango, Medium
In the above we are filtering only the fruits having small size and updating the values. So, the where clause filters the record based on a condition.
Advertisements