Я пытаюсь автоматически форматировать код, чтобы улучшить читаемость, используя Roslyn.
Вот как выглядит мой метод:
public SyntaxNode GetFormatedNode(SyntaxNode node)
{
var workspace = new AdhocWorkspace();
OptionSet options = workspace.Options;
options = options
.WithChangedOption(CSharpFormattingOptions.NewLinesForBracesInMethods, true)
.WithChangedOption(CSharpFormattingOptions.NewLinesForBracesInProperties, true)
.WithChangedOption(new OptionKey(FormattingOptions.UseTabs, LanguageNames.CSharp), true)
.WithChangedOption(new OptionKey(FormattingOptions.IndentationSize, LanguageNames.CSharp), 4);
return Formatter.Format(node, workspace, options);
}
Например, если у меня есть этот код:
class Example
{
void Method()
{
Column col = new Column { ID = "mySuperColumnID", Code = "mySuperColumnCode" };
}
}
Я хотел бы автоматически отформатировать его в:
class Example
{
void Method()
{
Column col = new Column
{
ID = "mySuperColumnID",
Code = "mySuperColumnCode"
};
}
}
Подробнее здесь: https://stackoverflow.com/questions/788 ... ith-roslyn