我有一个自定义文件布局类型模式,它根据我定义的一组特定首选项格式化我的源文件。运行代码清理时自动应用格式。
我遇到的问题是:对于我用于P / Invoke的结构,成员的顺序很重要。如何让ReSharper忽略为结构应用我的文件布局类型模式?
我认为以前版本的ReSharper曾经有过这个版本但是在2017年的ReSharper中,我似乎无法弄清楚如何做到这一点。有什么建议吗?
答案 0 :(得分:1)
在开箱即用的文件布局中,有一个名为“不可记录类型”的特殊模式,它完全符合您的要求:
内部有“Struct”类型,主模式不会触及此模式匹配的任何实体。
您的自定义文件布局似乎没有这种模式。
但是,您可以将以下XML代码添加到选项中的<Patterns>
标记以将其恢复(ReSharper |选项|代码编辑| C#|文件布局|顶部的XAML按钮)
<TypePattern DisplayName="Non-reorderable types">
<TypePattern.Match>
<Or>
<And>
<Kind Is="Interface" />
<Or>
<HasAttribute Name="System.Runtime.InteropServices.InterfaceTypeAttribute" />
<HasAttribute Name="System.Runtime.InteropServices.ComImport" />
</Or>
</And>
<Kind Is="Struct" />
<HasAttribute Name="JetBrains.Annotations.NoReorderAttribute" />
<HasAttribute Name="JetBrains.Annotations.NoReorder" />
</Or>
</TypePattern.Match>
</TypePattern>