105

ASP.NETMVCスキャフォールドコードの大部分を生成しています。生成されたすべてのファイルは、標準の命名規則を使用する部分的なクラスです。たとえば、私の従業員コントローラーファイルの名前はEmployeeController.csです。生成されていないカスタムロジックを使用してEmployeeControllerを拡張する場合は、EmployeeControllerCustom.csという名前の2番目の部分クラスファイルを作成します。カスタムロジックと生成されたロジックを2つの異なるファイルに分割して、次にEmployeeControllerを生成するときに、カスタム変更が上書きされないようにします。ファイル名に「カスタム」サフィックスを追加することは私には合理的と思われますが、従う必要のある、より確立された部分クラスファイルの命名規則はありますか?

4

2 に答える 2

169

私は.分離を使用します-たとえばEmployeeController.SomeSpecialBehaviour.cs。また、「dependentUpon」またはcsprojにあるものを介してプロジェクトツリーにリンクし、ファイルの下に(ソリューションエクスプローラーで)きちんとネストされるようにします。ただし、これは手動(csprojを編集)またはアドインを使用して行う必要があります。例えば:

<Compile Include="Subfolder/Program.cs" />
<Compile Include="Subfolder/Program.Foo.cs">
  <DependentUpon>Program.cs</DependentUpon> <!-- Note that I do not reference the subfolder here -->
</Compile>

次のように表示されます:

  • サブフォルダー
    • Program.cs
      • Program.Foo.cs
于 2009-09-25T17:34:59.067 に答える
17

更新/免責事項: 2018年に、誰かがMarc Gravell♦の回答(上記で受け入れたもの)を編集して、彼の例にサブフォルダーを含めました。そして、サブフォルダーを持っている場合の扱い方がこの答えの要点です。

その免責事項がなければ、なぜこの回答が存在するのか、なぜこれほど多くの票を獲得しているのか理解できないでしょう。


Marc Gravell♦の答えに追加するために、サブフォルダー内のファイルとDependentUponノードが無視される状況がありました。要するに、そのような場合、私のxmlは次のようにならなければなりませんでした。

<Compile Include="foo\bar.cs" />
<Compile Include="foo\bar.baz.cs">
    <DependentUpon>bar.cs</DependentUpon>  <!-- Note that I do not reference the subfolder here -->
</Compile>

これが誰かに役立つことを願っています:)

于 2014-12-08T10:15:50.747 に答える