gpt4 book ai didi

.net - ASP.NET MVC : Service layer, 数据层和 Controller - 它们如何一起交谈?

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

好的,我正在尝试重写这个设计不佳的 ASP.NET MVC 应用程序中的大部分代码。我已经阅读了很多关于许多概念和模式的内容,其中一些更高级,但我发现自己对非常基本的人员感到困惑。

那么 MVC 应用程序的整体结构应该是怎样的呢?

我有一些包装数据访问的东西——我们称之为“数据层”。它可能是存储库模式的实现或只是一些 Entity Framework 上下文类或......

然后我将有服务层包装业务逻辑。

服务 http 请求的场景应该是什么? 为请求创建 Controller -> 对其执行操作。进而 ?我创建“数据层”的实例并将其传递给方法服务层提交更改并显示结果?

所以所有服务(属于服务层)中的每个方法都应该将一些“数据层”类作为参数,以便它可以与“数据层”对话?或者我是否将“数据层”引用传递给构造函数中的服务?在那种情况下,我必须为每个请求创建新服务,对吗?

我读过关于使用 using Controller 中的关键字将“数据层”引用传递给服务。另一种方法是使用依赖注入(inject)。我真的不明白其中的区别......为什么不在 Controller 构造函数中创建它并保持简单?

最佳答案

您问题的实际答案

无意冒犯@drasto,但您似乎不是重构设计不佳的现有应用程序的人,因为您自己正在为相当基本的事情苦苦挣扎。至少您不应该在要部署的应用程序上执行此操作。

帮助

最好与一些完成 EF/Asp.net MVC/repository/service 模式的开发分析师交谈,并且知道它们如何相互通信以及应该如何实现它们。好处是您可以通过这种方式学到很多东西,并以正确的方式学习它。你为什么要重新发明整个轮子。

您还可以从 http://www.asp.net/mvc 上提供的示例中学习。这将向您展示应该如何使用良好的应用程序架构逐步完成工作。

我只想告诉你,在一些老板开始给你带来困难之前,你宁愿先学习这些概念。只要你渴望学习,承认你对这些东西知之甚少并不是什么坏事。

我在 one of my answers 中设置了一个 Asp.net MVC 应用程序架构的简化示例。以及在非常肤浅的层面上呈现这些概念。但也可能有帮助。

关于.net - ASP.NET MVC : Service layer, 数据层和 Controller - 它们如何一起交谈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5426506/

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