我使用ASP.NET MVC 2如何处理支付类型与最优雅的方式不同性质
保持简单,我有三个支付类型:信用卡,E-检查,或“稍后给我开账单”。我想:
- 选择一个支付类型
- 显示为一个支付类型的一些领域在我看来
- 运行一些逻辑使用这些字段(特定类型)
- 显示一个确认视图
- 运行使用这些字段(特定于类型)
- 显示收据视图一些更多的逻辑
每种支付类型都有特定的字段类型......也许有2个字段,也许更多。现在,我知道有多少种和哪些领域,但是可以添加更多。我认为对我的观点来说最好的办法是对每个支付类型进行局部视图以处理不同的字段,并让控制器决定要呈现哪个部分(如果您有更好的选择,我会打开)。我真正的问题来自视图之间控制器中发生的逻辑。每种付款类型都有可变数量的字段。我想保留所有强类型的内容,但感觉像某种字典是唯一的选择。添加到根据付款类型运行的特定逻辑。
为了保持强类型,我为每种付款类型创建了一个类。由于每个付款类型的字段不同,因此没有界面或继承类型。然后,我为每种付款类型提供了一个Submit()方法。然后,当控制器决定要显示哪个局部视图时,它还会分配提交操作的目标。
这不是优雅的解决方案,感觉非常错误。我伸出手来。你会如何做到这一点?
这就是我的团队中其他人所说的。我喜欢烤面包机的比喻。 – 2010-04-24 16:47:30