Razor ジェネレーターの現在のバージョンには、"Generator" オプションがあり、"MvcHelper" ジェネレーターと共に使用すると、ヘルパーの静的メソッドも生成されます。
たとえば、次の行を CSHTML ファイルの先頭に追加します (もちろん、カスタム ツールの Visual Studio プロパティを RazorGenerator に設定します)。
@* Generator: MvcHelper, GeneratePrettyNames : true *@
きれいな名前のオプションは厳密には必要ありませんが、アンダースコアを含む非常に長いクラス名を避けるために、デフォルトにする必要があると感じています:-)
既にご存知かもしれませんが、この方法の主な利点は、ヘルパーを個別のアセンブリで共有できることです。それが、私が最初に Razor Generator を使用する理由です。
同じアセンブリ内であっても、App_Code フォルダーの外にコードを残すことができるようになりました。ただし、これは (少なくともセキュリティのために) ベスト プラクティスではなく、Visual Studio デザイナーは混乱します。メソッドはまだ静的ではないと考えていますが、そうではなく、正常に動作します。
高速化のために同じサイト/アセンブリの App_Code フォルダーでヘルパーのプロトタイプを作成し、テスト時に共有コンポーネントにコピーしています。このソリューションが必要だった理由は、HtmlHelper で HTML のすべての部分を手作業でコーディングせずに汎用の Bootstrap ヘルパーを作成するためでした。つまり、@chrismillerukのこのソリューションと一緒に使用します。
後で、速度を上げるために CSHTML ヘルパーをハンドコーディングされた HtmlHelper に変換する必要があるかもしれません。しかし、まず最初に、自動化したい HTML コードのブロックをコピーして貼り付ける機能から、開発速度が大幅に向上し、同じフォーマット/エディターでそれらをすばやく完成させてデバッグすることができます。