2009-06-05 75 views
1

我想在ASP .NET Webform上实现状态设计模式。状态设计模式 - ASP .NET Webform

该状态将由传递给页面的查询字符串决定。根据页面的状态,任何操作都会调用具体实现上的方法。

我想要实现的是一个页面,它可以处理任意数量的相同通用功能的不同实现。

我的问题是: 这项工作? 这听起来像是正确的做法吗?

+0

@丹,你的问题得到了答案吗? – 2009-06-08 12:28:28

回答

0

我认为你的建议是一个很好的方法。我真正可以提供的唯一建议是不要挂上完美的状态模式。我认为只需要一个根据查询字符串值调用方法的开关是完全可以接受的。

2

使用状态模式是你可以采取这种做法,但说实话你的描述什么是什么样的MVC框架的设计来完成的部分。

编辑:
MVP/MVC

由于这里描述的MVC框架不是一个选项,然后我会看看模型视图演示模式(MVP),同时按被动的视图方法或superviser方法:http://www.martinfowler.com/eaaDev/SupervisingPresenter.html

我们发现,被动的视图方法为我们遗留代码制定出对我们好一点的适应工作。

编辑: 模式:

在这种情况下,你选择哪个模式其实完全取决于企业的需求是什么。

状态模式:

State模式通常用于当您需要更改基于其当前状态或关系对象的状态的对象的行为。这种模式的一个常见用法是在游戏中,对象的行为取决于按下哪个鼠标光标按钮。

http://en.wikipedia.org/wiki/State_pattern

策略模式:

这种模式是很好的,因为当你需要基于配置不同的实现。例如,假设您正在定义电子邮件系统,并且您需要根据使用哪个电子邮件提供商发送电子邮件来实现不同的实施。

http://en.wikipedia.org/wiki/Strategy_pattern

所以国家模式可以definetly是它只是归结为目标是什么是正确的方向,什么样的行为是你的努力来满足。

什么,你会经常发现的图案是他们海誓山盟工作得很好,你会在使用一起选择多种模式海誓山盟。

+0

MVC对我来说不是一种选择,我需要将它融入到遗留代码库中。 – Dan 2009-06-05 13:27:34