我正在研究一個小型的ASP.NET MVC項目。
我想實現Nhibernate堅持MS Sql Server數據庫。 花了很長時間學習DDD和在互聯網上找到的其他項目,我決定去存儲庫模式。 現在我馬上面臨困境。
使用Nhinbernate時,我真的需要存儲庫嗎?
那豈不是更好有與Nhinbernate避免多次寫入類似的東西進行交互的服務層(我沒有在時刻一個服務層):ASP.NET MVC,Nhibernate和中小型項目庫
public Domain.Reminder GetById(Guid Code)
{
return (_session.Get<Domain.Reminder>(Code));
}
public Domain.Reminder LoadById(Guid Code)
{
return (_session.Load<Domain.Reminder>(Code));
}
public bool Save(Domain.Reminder Reminder)
{
_session.SaveOrUpdate(Reminder);
return (true);
}
public bool Delete(Domain.Reminder Reminder)
{
_session.Delete(Reminder);
return (true);
}
我發現一隻老Ayende的POST是針對倉庫的。
我知道圍繞這些話題有一個巨大的爭論,答案總是......依賴,但在我看來,如果抽象層數太多,事情會變得更加複雜和難以遵循。
我錯了嗎?
只是一個小紙條。沒有中小型項目,現在它可能很小,但是明天你的經理會問你另一個特徵,然後是另一個特徵,最後你會有一個巨大的項目,具有中小型架構。我真的不喜歡Big Design Up Front,但有時你需要考慮一下。 – goenning 2011-01-21 14:00:06
我完全同意你的意見,但是,實際上,如果不是因爲我未來可能不會使用nihbernate,我無法看到使用存儲庫的好處。它產生了許多額外的工作,我目前無法證明這一點。 – LeftyX 2011-01-21 14:52:17