2013-01-17 68 views
0

我有一個SQL Server數據庫與表。除此之外,我還爲每個使用LINQ並具有添加,刪除,獲取,更新功能的表有一個類。組織級別的抽象

最重要的是,我想有更多的項目特定的方法。

例如,我最高級別的功能之一是將任務分配給員工。

我的想法是將有另一組類這將具有此功能,例如,最初的任務類有:

public static IEnumerable<Task> GetAll(Schedule schedule) 
    { 
     KezberPMDBDataContext db = new KezberPMDBDataContext(); 
     return from p in db.Tasks 
       where p.ScheduleID == schedule.ScheduleID 
       select p; 
    } 

因此,例如,佈置任務,我需要GetUnscheduledTasks。我可以有:

public static IEnumerable<Task> GetUnscheduled() 
    { 
     return Data.Tasks.GetAll(emptySchedule); 
    } 

我基本上想要:具有中等水平的低水平交換數據和具有中等水平的頂級交換數據。

我該如何組織或重構我的代碼以保持其清潔和模塊化?

感謝

回答

1

所以,你必須像...

SQL> ORM層>業務層。其中BL有習慣:

「分配給員工的任務」

如果我們來到你的帖子的末尾「想有[...]具有中級水平,以及頂級低電平交換數據...「。我建議你看看MVC模式。控制器充當模型和視圖之間的中間層。

「另一組具有此功能的類」。我假設你是指另一組類來協助控制器。我傾向於將這些類稱爲「幫助類」,直到我有足夠的關係來定義一個不太抽象的名稱。除了我的通用MVC/MVVM/etc模式之外,我傾向於包含所述抽象。