ASP.NET模型视图演示程序值得花时间吗?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (67)

我在这个周末阅读了关于ASP.net MVP模式的内容,似乎即使是最简单的任务也需要付出很多努力,如果在MVP模式中这样做的话,薪酬似乎在更大的项目中,但我认为如果我将遵循MVP。为什么不在ASP.net MVC中做项目?

我在看MVP模式的原因是因为我已经注意到在我的所有ASP.net Webform项目中,后面的代码中有很多代码,只是为了处理事件,如果我有很多服务器控件在网络上形式,所以我正在寻找方法来减少这种情况,并遇到MVP模式。

是否值得努力遵循MVP模式或只是切换到ASP.net MVC?

提问于
用户回答回答于

如果你开始一个新项目,那么ASP.net MVC是一个更好的选择。但是,如果只是想按照刚刚说的重构现有项目,那么MVP就是选项,因为没有简单的方法将这些Web表单代码转换为MVC。

用户回答回答于

我建议阅读以下两个链接,以帮助了解MVP和MVC:

你应该切换吗? 根据你告诉我的情况,我建议你使用上面文章中提到的Passive MVP模型。 我的主要假设是:

  1. 处理WebForms应用程序的现有代码库
  2. 需要为现有功能使用ThirdParty .Net控件
  3. 在现有应用程序上工作并没有时间重新构建它们
  4. 将来使用的任何ASP.Net Web应用程序,都可以逐渐应用被动MVP并立即获得TDD的好处

视图(codebehind + aspx)基本上变得糟糕,只是执行简单的任务:

  • 获取演示者提供的信息
  • 响应事件并将信息提供给演示者

我为Web Forms开发广泛地使用了这个模型,我无法想象不能单元测试我的Model和Presenter代码。一旦建立了基础模型并不需要很长时间,并且可以看到单元测试的强大功能,那么使用Web窗体就变得非常有趣了。

一些MVP的链接,我使用的模型基于:

我也建议你学习MVC。 如果时间允许,请使用现有应用程序并将其移植到MVC。这样,唯一的焦点就是了解MVC,当将逻辑移入MVC模式时,会发现在WebForms中实施的内容,并且从未给出太多想法,但现在需要以其他方式解决问题。伟大的方式来比较模式,看看什么适合你。

扫码关注云+社区

领取腾讯云代金券