我发现Roslyn CTP中存在的代码格式非常缺乏。但达斯汀坎贝尔在his talk(约42:00大关)中提到:
实际的格式化引擎也是可扩展的。那里有一个规则引擎,所以你可以添加格式规则,并在你想要的时候自定义。
但是在查看实际代码时,我发现只有内部使用Format(SyntaxNode)
类internal
的{{1}}扩展方法。
我的问题是:可扩展性在哪里?它存在于Roslyn CTP中吗?
答案 0 :(得分:4)
随着Roslyn 2012年6月CTP的发布,现在可以实现这种可扩展性。要调用格式,请查看Roslyn.Services.dll中的Format
扩展方法(不要忘记添加using Roslyn.Services;
。
要公开自己的格式规则,请尝试实施Roslyn.Services.Formatting.IFormattingRule
界面。不幸的是,我们还没有这方面的样本,但您可以随时为遇到的任何问题提出问题。