我正在生成大量的ASP.NET MVC腳手架代碼。所有生成的文件都是使用標準命名約定的部分類。例如,我的員工控制器文件名爲EmployeeController.cs。如果我想用定製的非生成邏輯擴展EmployeeController,我創建了一個名爲EmployeeControllerCustom.cs的第二個部分類文件。我將自定義和生成的邏輯分成兩個不同的文件,所以下次我生成EmployeeController時,我的自定義更改不會被覆蓋。將「自定義」後綴添加到文件名似乎對我來說很合理,但是我應該遵循一個更加成熟的部分類文件命名約定嗎?部分類文件的命名約定
74
A
回答
121
我使用.
分隔 - 例如EmployeeController.SomeSpecialBehaviour.cs
。我還通過「依賴關係」或任何它在csproj中將它鏈接到項目樹中,以便它整齊地嵌套在文件(在解決方案資源管理器中)下。不過你必須手動(編輯csproj)或者使用外掛程序來做到這一點;例如:
<Compile Include="Program.cs" />
<Compile Include="Program.Foo.cs">
<DependentUpon>Program.cs</DependentUpon>
</Compile>
顯示爲:
Program.cs
Program.Foo.cs
9
爲了增加馬克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>
我希望這可以幫助別人:)
+0
幫助了我,謝謝。 – heltonbiker 2015-08-04 12:46:43
相關問題
- 1. 部分類文件名的命名約定?
- 2. 文件命名約定
- 3. Qt小部件的命名約定
- 4. zf2類的命名約定
- 5. C#類命名約定
- 6. CakePHP的命名約定/文件結構
- 7. Java Spring MVC文件夾/命名約定
- 8. 基本文件命名約定
- 9. 角4文件命名約定
- 10. C#項目文件夾命名約定
- 11. 佈局文件命名約定?
- 12. Ruby Rails Lib文件夾命名約定
- 13. PHP文件命名約定(.class,.inc)
- 14. Bazel文件夾命名約定
- 15. 命名約定上傳文件
- 16. Spring配置文件命名約定
- 17. 命名約定
- 18. 命名約定
- 19. 命名約定以區分部分視圖和普通視圖
- 20. 通用類的文件名約定
- 21. 後繼分支的Git命名約定?
- 22. 替換API /類的命名約定
- 23. 抽象類的命名約定?
- 24. objC中的類別命名約定
- 25. 過濾器類的命名約定?
- 26. DTO的枚舉類型命名約定
- 27. 重命名文件的一部分
- 28. 如何在datanode |中命名文件datanode中文件的命名約定hadoop
- 29. 區分基於命名約定的類中的方法?
- 30. TSQL命名約定〜這個命名約定叫什麼名字?
沒有意識到DependentUpon上的任何文件工作... – thecoop 2009-09-25 17:38:21
的DependentUpon建議非常酷,效果很好。感謝您的注意。如果我閱讀正確,則不要簡單地使用「自定義」之類的標準後綴。你的後綴總是表達部分類文件功能的意圖。另外,你有沒有理由使用這個。分離與套管相反?是的。提供的不僅僅是改進的可讀性?謝謝。 – 2009-09-25 18:30:42
正確 - 文件名稱表示*部分*中代碼的意圖。所以如果我正在實現一個奇特的接口(並保持代碼分離),它可能是'SomeType.ICustomTypeDescriptor.cs'。 IMO(IMO)分離了兩件事:實際類型('SomeType')和意圖ICustomTypeDescriptor - 都已經完全套用;此外,它與'SomeForm.Designer.cs';# – 2009-09-25 19:02:12