2011-06-02 60 views
3

可能重複:
(Conventions) C# Class namesC#類的名稱 - 公約如何命名類

我使用實體框架(甚至與NHibernate或LINQ到SQL),你通常有一系列通過解決方案傳遞的實體類。我通常將這些類放在一個名爲[SolutionName]的VS項目中。數據

在某個階段,這些將被另一個類使用,它可能會在保存和刪除它們之前執行一些業務邏輯。在這種情況下,我將這些動作類放在名爲[SolutionName]的項目中。核心

我看到一些開發人員使用Logic或Manager後綴這些類。 RegistrationManager然後有一個Save(),Delete(),Update()。其中最好的例子就是開源的NopCommerce。

有些人把它們放到一個名爲Bll的文件夾中,但保留不變,例如命名空間將是[SolutionName] .Core.Bll,其中有一個名爲Registration的類。然後他們會在名稱空間上回答,以區分這是數據庫實體還是業務邏輯類。

問題是我該如何命名類?我是否應該用Logic/Manager/Service加後綴,還是有更好的解決方案?

回答

1

你不應該後綴的一切,那都是。

您必須爲不同的圖層創建不同的項目而不是文件夾。

+1

因此,與類名退居[解決方案名稱]。核心和[解決方案名稱]。數據的方法,因爲它們是如2個不同項目的註冊課程可以嗎? – asn1981 2011-06-02 11:26:18

+0

這沒關係。 1)你可以通過命名空間解決它。 2)有時你會添加兩個或三個程序集,其中將是類型相同的名稱,這是正常情況。 3)有時你會因爲某些原因(比如映射)而生成類型,並且這些類型可能會在你的項目或引用程序集中公佈現有類型的名稱,這是絕對正常的情況,這就是爲什麼使用名稱空間的原因。 – Evgeny 2011-06-02 11:31:56