gpt4 book ai didi

asp.net - Model-View-Presenter,View的界面属于哪里?

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

我正在重新审视 Model-View-Presenter(或监督 Controller ,无论现在如何称呼它),因为我们只在工作中使用 WebForms,我认为关注点分离会有所帮助。

我的问题是关于“ View ”界面的——我知道您为每个页面以及演示者创建了一个 View ,并且 ASPX 页面实现了 IWhateverPageView 接口(interface),因此它可以将自己作为演示者将使用的 View 传递。关于项目/DLL,该接口(interface)在哪里创建?我知道演示者都有一个 MyProject.Presentation 的习惯。它们所在的类库(然后您可能为您的存储库/服务/域对象/等提供单独的库)。 IWhateverPageView接口(interface)属于表示层,可能在子命名空间中(例如 MyProject.Presentation.Views )?它是否需要自己的库(例如 MyProject.Views )?

常见的结构是什么?

最佳答案

我在 WebForms 中做了很多 MVP,而且我通常一开始就非常简单地组织我的项目。

MyProject.Web.UI

包含网站。网页、javascript等...

我的项目网站

包含将 UI 连接到业务逻辑所需的所有演示者、 View (接口(interface))和逻辑。

我的项目库

通常包含域逻辑,但如果项目足够简单,我会将其插入 MyProject.Web 程序集。

MyProject.Web.Tests、MyProject.Lib.Tests

你有测试项目对吗?

最后,这实际上取决于您的需求。那里没有标准做法,所以您提出的任何约定都应该对您和您的团队有意义 .如果这意味着你有一个、两个或二十个项目,那就这样吧。

关于asp.net - Model-View-Presenter,View的界面属于哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7768010/

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