微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net-mvc – Asp.Net MVC和Session

我想在asp.net mvc应用程序中以不同的步骤构建一个对象,每个步骤是不同的页面。您可以在快速Web.Forms应用程序中存储在会话中的事情。

阅读它,Session似乎并不像asp.net MVC的一样。然而,我不能真正想到这种情况的其他替代方案,因为TempData和ViewData似乎也不适合,所以也许我错了。

当然,我可以把4个步骤放在一个页面上并显示/隐藏,但这不是我的观点。我想在MVC中听到关于Session的看法,如果这是对这种多步骤问题的好消息,或者您倾向于以其他方式执行。

这非常像问题Session variables in ASP.NET MVC,除了我不是在寻找如何访问会话,但如果它是解决这个问题的最佳方法,或者有更好的东西我在Asp.Net MVC中缺少。

提前致谢

解决方法

没有关于Session的un-MVC,它是Web的重要组成部分,大多数网站以某种方式使用它。你真的有两个主要的选择。将数据库中的对象存储在页面之间(这意味着保存不完整的对象)或将其放在会话中。两者都有优缺点。

在会话中,您不必将部分对象保存到数据库,但如果用户离开或会话超时,则丢失所有信息。它还可以导致每个用户更大的内存占用,并且当您进行扩展时会导致其他一些问题。 (所有这些都可以使用粘性会话在负载平衡器或中央会话存储上解决)。

数据库方式在很多方面都会更好,但通常您不想将不完整的对象保存到数据库中,一个妥协是创建另一个表并将对象序列化到该表。它不会通过你的真实表,所以你不必妥协在你的数据库限制。 (您也可以将数据库中的会话数据存储在基本上做同样的事情)

最后,这两种方式之间的判断呼唤,我已经使用了这两年。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐