Using the following code:
C#public class Foo
{
private int _bar;
public int Bar { get { return _bar; } }
public Foo( /* Bar has a capital B here */ int Bar )
{
_bar = Bar;
}
}
using the Convert to Auto-implemented Property refactoring outputs this code:
C#public class Foo
{
public int Bar { get; private set; }
public Foo( /* Bar has a capital B here */ int Bar )
{
Bar = Bar; // Should have been this.Bar = Bar
}
}
Note that my Programming Style settings specify to never use the "this" when it's implicit.
The "Bar" constructor argument shouldn't have had a capital letter in the first place according to our own coding styles, but the refactoring shouldn't have introduced this error.
Thank you for pointing out this issue to us, Dominic. We reproduced it. You will be automatically notified when we fix the issue.