2011-01-12 77 views
1


我有這樣是否可以將存儲非持久性邏輯庫

public class Obj : IEntity 
{ 
    public virtual int ID { get; set; } 
    public virtual string Value { get; set; } 
} 

一類,我需要實現哪些
1.如果obj與給定值不存在的方法在數據庫中創建這樣一個Obj
2.如果在數據庫中有多個Obj具有相同的值,則拋出異常
3.用給定值返回Obj(現在我確信只有一個這樣的對象)。
問題是 - 我應該在哪裏放這個方法。 ObjRepository是否適合它?
比你提前!

回答

1

我會說這比商店存儲庫中的某些東西更適合商業規則。對象應該理想地做一件事(或少數,但在相同的抽象層次上)。處理數據庫更新/讀取/刪除已經是一回事(而且是一個大問題:))。

所以我會建議添加第三個對象(例如ObjService)來照顧這個業務場景。

請注意,上下文(一如既往)是國王。如果這是一個原型或您希望快速獲得的原型,將邏輯放入存儲庫並在時間到後重構爲服務是沒有任何問題的。

相關問題