Can't change struct's members value inside generic collections
Imagine this struct : struct Person { public string FirstName { get; set; } public string LastName { get; set; } } And following code : var list = new List<Person>(); list.Add(new Person { FirstName = "F1", LastName = "L1" }); list.Add(new Person { FirstName = "F2", LastName = "L2" }); list.Add(new Person { FirstName = "F3", LastName = "L3" }); // Can't modify the expression because it's not a variable list[1].FirstName = "F22"; When I want to change Property 's value it gives me the following error: Can't modify the expression because it's not a variable While, when I tried to change it