gpt4 book ai didi

asp.net-mvc - ASP.NET MVC、Nhibernate 和中小型项目的存储库

转载 作者:行者123 更新时间:2023-12-04 17:12:59 24 4
gpt4 key购买 nike

我目前正在开发一个小型 ASP.NET MVC 项目。
我正在尝试实现 Nhibernate 以保留在 MS Sql Server 数据库上。
花了很长时间研究 DDD 和 Internet 上的其他项目后,我决定采用存储库模式。
现在我面临两难的境地。
使用 Nhinbernate 时我真的需要一个存储库吗?
有一个与 Nhinbernate 交互的服务层(我目前没有服务层)会不会更好,避免多次编写这样的东西:

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 反对存储库。
我知道围绕这些话题有很大的争论,答案总是......取决于,但在我看来,抽象层太多,事情变得更加复杂和难以理解。
我错了吗?

最佳答案

Ayende 反对以你的方式编写存储库,因为你问这个问题的原因,它是重复的代码,无论如何 NH 可以处理所有这些。他主张像调用存储库一样直接调用 NH,而不必担心。

我非常同意他的看法。除了做更多的工作,真的没有什么可收获的。

关于asp.net-mvc - ASP.NET MVC、Nhibernate 和中小型项目的存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4759449/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com