Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Resharper changing fields to readonly

I am trying out Resharper and i notice that it is recommending to set instance level fields to readonly. For example:

private readonly IConnection _connection;

public RetrieveCommand(IConnection connection) {
    _connection = connection;
}

What is the benefit of marking fields like this readonly?

like image 275
Josh Avatar asked Aug 28 '09 00:08

Josh


2 Answers

What are the benefits to marking a field as readonly in C#?

like image 111
aku Avatar answered Sep 22 '22 05:09

aku


It recommends that you should set it to readonly because the only place you assign the _connection member is in the constructor. That is the only place you are allowed to assign to a readonly member.

See this article for an explanation: Developer Corner: Mark C# class data member as readonly when it's read only

like image 23
Colin Avatar answered Sep 18 '22 05:09

Colin