KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
Suppose you have a class Person : public class Person { public string Name { get; set;} public IEnumerable<Role> Roles {get; set;} } I should obviously instantiate the Roles in the constructor. Now, I used to do it with a List like this : public Person() { Roles = new List<Role>(); } But I discovered this static method in the System.Linq namespace IEnumerable<T> Enumerable.Empty<T>(); From MSDN : The Empty(TResult)() method caches an empty sequence of type TResult . When the object it returns is enumerated, it yields no elements. In some cases, this method is useful for passing an empty sequence to a user-defined method that takes an IEnumerable(T) . It can also be used to generate a neutral element for methods such as Union . See the Example section for an example of this use of So is it better to write the constructor like that? Do you use it? Why? or if not, Why not? public Person() { Roles = Enumerable.Empty<Role>(); }
Tags (comma-separated)
Save Edits
Cancel