I'm having a tough time tracking down the setting to change how spacing and wrapping is done when calling base with the Constructor Initializer.
In C# -> Formatting -> Wrapping I have the Constructor Initializer set to Wrap colon: Wrap if long or multiline before. Align by: Declaration Indent 1.
The result:
C# protected ProcessingViewModel(IUnitOfWorkFactory<IRequestEntitiesUnitOfWork> unitOfWorkFactory = null)
: base(
unitOfWorkFactory ?? UnitOfWorkSource.GetUnitOfWorkFactory(),
x => x.Requests,
x => x.Name)
{
...
}
The negative indentation on the parameters for base is what is throwing me. If I use CodeRush's Break Apart Arguments, it gives me the desired indentation.
C#protected ProcessingViewModel(IUnitOfWorkFactory<IRequestEntitiesUnitOfWork> unitOfWorkFactory = null)
: base(
unitOfWorkFactory ?? UnitOfWorkSource.GetUnitOfWorkFactory(),
x => x.Requests,
x => x.Name)
{
...
}
But as soon as I run CodeCleanup again, it goes to the negative indentation.
I'm probably missing something right in front of me, but if you can point me in the right direction I'd appreciate it.
Hi,
Thank you for your code sample.
I have reproduced this issue with incorrect indentation on my side. It is caused by the "Wrapping\Arguments" formatting option. Setting this option to "Align by: Expression, Indent: 1" corrupts the indentation of constructor initializer arguments. We are working on this issue and will inform you of our progress.
Thank you for looking into this.
You are welcome.