注意:按工作流程,我不是指工作流技术,例如Workflow foundation.
我经常发现自己被要求设计通过一系列步骤的页面.
1)从一组选项中选择.提交.2)使用结果填充页面.做出改变.提交.3)根据以前的结果做一些事情.提交.4)确认以前的操作.提交.5)转到1.
带购物车的电子商务网站将成为教科书的一个例子.
现在,有很多方法可以解决这个问题.我的问题是,在asp.net中推荐的方法是什么?在PHP或ISAPI中,我只使用标准的html控件,获取发布数据并使用它来处理,每个都在不同的页面上.
ASP.NET似乎更倾向于单页解决方案.做你的工作,回复自己,然后在同一页面显示你的结果..一直到最后,使用像MultiView或UpdatePanels这样的工作.但关键是,你不回发到另一个页面.
现在我明白微软已经在最近的版本中向.NET添加了跨页回发,但这似乎不那么令人厌烦.除非您通过属性或上一页中的某些内容公开它,否则很难处理回发的数据.
你如何处理我上面列出的情景?您是使用多视图还是更新面板并在一个页面中完成所有操作?或者你在几页中做到了吗?你在这方面的最佳做法是什么?您是否有任何特定的设计?您如何构建网站工作流程?
有很多方法可以做到这一点(除了多视图):
1、asp.net剂量支持行动帖子,护目镜Page.Request.Form[item] http://msdn.microsoft.com/en-us/magazine/cc164151.aspx#S3
2、您可以将临时数据保存到数据库临时表中,然后当用户浏览每个页面时,他们所需要做的就是引用数据库中的临时数据ID。(请求参数)
3、您还可以将临时数据保存为会话中的对象,以便“工作流程”中的所有页面都可以引用该会话,然后基于它进行操作。
毕竟它们都有优点和缺点,这主要取决于你的项目需求有多复杂。
| 归档时间: |
|
| 查看次数: |
1261 次 |
| 最近记录: |