我尝试过格式化文档,但是只是美化了代码,是否有一个工具可以对文件中的名称空间,类及其属性的外观进行重新排序(词典或其他),以便可以将两个自动生成的文件在文本上进行相互比较?
人为生成的文件在文件中没有一个以上的类,或者当同一文件中有多个类时,它们是分层的,因此无需求助类及其属性的顺序,但是有一个工具可以通过类名称,字段,属性,方法名称和签名来重新格式化和排序文件?
最初的问题是更新WCF服务,将类遍历Reference.cs文件。
编辑:要重现,只需更新WCF服务并观看Reference.cs文件完全并置,类在文件中上下移动。试图以一种独特的方式对大型自动生成的C#文件进行排序,以实现文本比较,同时使结构与原始代码保持同构。
Edit 2:具体示例代码假设文件如下(伪代码)
Namespace S2
{
Class C2
Method M2
Property P2
Constructor CTOR2
Field F2
Method M1
Property P1
Field F1
Constructor CTOR1
}
Namespace S1
{
Class C1
Method M2
Property P2
Constructor CTOR2
Field F2
Method M1
Property P1
Field F1
Constructor CTOR1
}
然后经过格式化排序将是
Namespace S1
{
Class C1
Constructor CTOR1
Constructor CTOR2
Field F1
Field F2
Property P1
Property P2
Method M1
Method M2
}
Namespace S2
{
Class C2
Constructor CTOR1
Constructor CTOR2
Field F1
Field F2
Property P1
Property P2
Method M1
Method M2
}
注意:属性,方法,字段的顺序无关紧要,只要排序之后它们始终以相同的顺序出现。
是否有一种工具可以对命名空间,类的外观进行重新排序,它们在文件中的属性(字典或其他),以便两个自动生成的文件可以在文本上进行比较吗?
花了很长时间后,发现了这些:
1] Resharper extension,并且其Greenkeeper已声明为this。
2)
CodeMaid extension但是
我不确定这些扩展名是否满足您的所有要求,如果仍然不是您要的扩展名,恐怕到目前为止尚不支持您想要的扩展名。[我建议您可以在我们的User Voice forum(DC) ----suggest a feature
中发布功能请求,以分享您的想法。 Besides
,您可以在此线程中共享链接,包括我们在内对此感兴趣的任何人都将对其投票,以尽快引起Microsoft的注意。希望它可以帮助您。