7

StyleCop爲C#文件的內容授予特定的排序順序。例如,在方法和公共聲明應該先於私人之前,應聲明字段。是否有Visual Studio 2010擴展來排序方法?

將Visual Studio擴展程序自動將這些內容移動到該順序將很有用。

是否有擴展名爲此(我發現CodeSorter,但反饋表明它是非常錯誤的)?或者是否有任何擴展或快捷方式使手動重新排序這些內容變得不那麼痛苦?

+1

如果你問我,這聽起來像是一個製造愚蠢的規則。 –

+0

我相信這個想法是按照重要性遞減的順序來呈現信息,以便有人閱讀它(即打算使用它)可以更快地掌握它。 –

回答

8

您可以Regionerate嘗試:

Regionerate是一個自動化工具,它可以幫助您隨着時間的推移保留您 代碼的佈局。 Regionerate允許您在 代碼中定義區域,並確定成員(字段,方法,屬性等) 應放置在其中的方式。 Regionerate是一個零摩擦工具 - 設置時,您可以選擇代碼佈局(您希望 代碼查看的方式),或者只使用默認代碼佈局。從 開始,Regionerate將確保您的代碼遵循該代碼佈局。

5

ReSharper可以做到這一點。它有一個「類型成員佈局」功能,允許您使用默認的一組規則,或者定義您自己的規則。

+1

經過一番搜索之後,我發現[此博客文章](http://blog.mijalko.com/2009/01/resharper-stylecop-and-type-members.html)給出了一組ReSharper規則。 –

1

我使用ReSharper及其類型成員佈局。請參閱我的post瞭解更多詳情。

0

如果代碼排序是你唯一的關注,你可以嘗試在Visual Studio擴展CodeSorter

CodeSorter是高度可定製的擴展,它允許用戶以 排序C#代碼itby各種條件,例如名稱,類型(方法, class,struct ...),可見性修飾符(private,public,...), constness修飾符(const,static,readonly)和虛擬修飾符 (virtual,override,new,...) 。

可以指定多個搜索條件,使其具有相同的優先級,例如先放置受保護的和私有成員,然後公開和內部公開。

以前導「m_」和「_」被去除的方式比較名稱。 這允許字段和屬性(例如_foo和Foo)彼此正好相鄰 。

單線聲明放置時沒有分隔空白線,而 多線內聲明由空行分隔。 的例外是,一行內的字段後面跟着一個沒有 的多行內容屬性,同名的註釋將被放在沒有分隔空白 的行中。

+0

我在問題中提到了CodeSorter。 –

+0

@MatthewStrawbridge我的錯誤。我一直在使用它,並且迄今還沒有遇到任何錯誤。 – SreekanthGS

相關問題