using System.Collections.Generic;
static void Main(string[] args)
var data1 = MyClass.GetData1();
foreach (var item in data1)
item.Message = "New Message";
foreach (var item in data1)
Console.WriteLine(item.Message);
var data2 = MyClass.GetData2();
foreach (var item in data2)
item.Message = "New Message";
foreach (var item in data2)
Console.WriteLine(item.Message);
public string Message { get; set; }
public MyClass(string message) => Message = message;
public static IEnumerable<MyClass> GetData1()
var data = new string[] { "Old Message 1", "Old Message 2", "Old Message 3" };
return data.Select(x => new MyClass(x));
public static IEnumerable<MyClass> GetData2()
var data = new MyClass[] {
new MyClass("Old Message 1"),
new MyClass("Old Message 2"),
new MyClass("Old Message 3")