ASP.NET模型视图Presenter项目结构

时间:2008-10-21 21:16:12

标签: asp.net asp.net-mvc design-patterns mvp

我刚刚开始一个新的ASP.NET项目并使用MVP模式。我确实考虑过MS MVC,但它尚未发布,对于团队中的某些人来说将是一个很大的学习曲线,所以我现在选择了MVP,可能还有未来的项目MVC。

无论如何,我觉得每个webform都有一个Controller / Presenter类。这是很多额外的类,基本上是Web项目中文件数量的两倍。这是其他人如何构建MVP或者有哪些替代方案?

3 个答案:

答案 0 :(得分:1)

这似乎是一种常见的误解 - > “更多文件/类= =更复杂”

我们选择遵循UI分离模式的原因是为了帮助分离关注点,使代码更容易,更便宜,更改和维护以及(重要的,重要的)我们可以对复杂的部分进行单元测试仍然保持UI层的纤薄。

我将使用测试版ASP MVC。原因是,虽然它仍然只是一个测试版(PDC很快,可能会对发布产生影响,我们有5个预览版本),它有一个更好的框架来支持这种风格,而不是我在合理的时间内写的帧。

你当然可以使用其他框架,例如城堡单轨列车。

答案 1 :(得分:0)

我认为很多都取决于它,但在大多数情况下,这实际上是最终的结果。

我个人使用带有数据,业务,演示代码的n层架构。 (谁知道我遵循的实际格式)。我得到的文件比在aspx中做的更多,但代码更容易管理。

答案 2 :(得分:0)

对于你的问题 - 我已经看到很多不同的MVP并没有看到任何减少文件数量的东西,我想不出办法减少文件数量。

根据我的经验,我重用了视图接口甚至代码隐藏,其中视图结构相同,但呈现不同的数据。您还可以考虑在适用的情况下重复使用控制器。

我认为值得注意的是,拥有更多文件将是转向更敏捷和测试驱动开发的自然结果,开发人员会发现它越来越自然。 (就像我们中的一些人发现在单个文件中有很多方法一样很自然......)