从中学习MVP的任何好的源代码?

时间:2010-09-15 02:06:41

标签: asp.net webforms mvp

我知道MVC是未来,但是对于我们中的一些人仍然停留在古老的网络形态,我正在努力学习如何做TDD并为我们当前的应用程序引入更好的测试......

基本上asp.net 2.0 c#web应用程序非常复杂,有一些逻辑在sproc中,一些在javascript中通过json数据处理,一些在用户控件中,一些在后面的代码中。更不用说这里和那里的一些图书馆让它更加快乐。

我真的不知道如何开始将事情分解成更小的块来进行任何测试。

从此我只能找到这个related question which doesn't really help much。 我有点喜欢simplistic way of getting things started but was looking for more comprehensive samples

源代码,教程等方面的任何帮助都会很好:) 谢谢!

5 个答案:

答案 0 :(得分:3)

答案 1 :(得分:0)

答案 2 :(得分:0)

Dino Esposito的book对我来说效果很好。很多细节,包括IIS7。但是我也为我的公司付了一个课程,增加了很多细节。

Javascript和JSON最终不是ASP.NET MVC的一部分。 ASP.NET MVC 支持它们。差异可能是微妙的,但是为了将事情分解为可管理的学习块,很高兴认识到这一点。所以,我建议你把它们分成自己的小桶来分解它们。

我甚至会更进一步说你应该首先理解MVC的每个部分。 M是模型,最终只是一个普通的老类,除了视图和控制器如何与它进行交互之外,没有太多可以理解的内容。

IMO,Controller是最重要的部分,理解其中的一部分是理解Routes。控制器位于驾驶员座位(因此名称),路线是您从URL到右控制器的方式。其他一切都驱逐了。

理解视图主要是通过一些< %%>来理解纯HTML。包括您的应用程序位。简而言之,如果您了解经典ASP或无代码的Web窗体,您将很好地掌握所需的所有语法。但是,您通常会在视图中使用更少的代码而忘记< asp:xxx runat =“server>。

一旦你掌握了控制器如何接受输入然后连线发送正确的ActionResult(视图是最常见的开始),你就能够开始引入其他位。

我很有信心,你不会错过WebForms。

答案 3 :(得分:0)

在Microsoft ASP.NET MVC上工作的Phil Haack有两篇很有用的博客文章:

  1. ASP.NET Supervising Controller (Model View Presenter) From Schematic To Unit Tests to Code
  2. Everything You Wanted To Know About MVC and MVP But Were Afraid To Ask
  3. 它们不会完全全面,但应作为良好的介绍,以帮助您入门。

    编辑: Dino Esposito撰写了一篇关于2010年9月MSDN杂志主题的文章:Better Web Forms with the MVP Pattern

答案 4 :(得分:0)

这是一个很好的例子,你可以很好地了解在ASP.Net WebForms中实现MVP:

http://www.avantprime.com/articles/view-article/2/model-view-presenter-(mvp)-design-pattern-in-asp.net