在Web应用程序之间共享数据

时间:2010-01-18 01:12:31

标签: web-applications session-variables

我们在这里有一个大型WebForms应用程序,我们希望逐个移植到mvc。

我宁愿没有co-mvc / webforms解决方案,而是希望创建一个全新的mvc应用程序,可以从我们的webform应用程序中调用它,它可以调用我们的webform应用程序。

问题在于在两者之间共享信息。我们在webforms应用程序中非常大量地使用会话对象,并且在转换所有内容之前,需要保持不变。

那么有没有办法让我们在mvc应用程序中写入会话对象并让webforms应用程序选择它,反之亦然?

或者任何人都可以提出另一种非数据库方式吗?

修改

实际上我会将其扩展为“跨Web应用程序共享”。

2 个答案:

答案 0 :(得分:2)

请原谅我没有直接回答这个问题,但我可以给你一些建议吗?

您可能可能从将大量使用“会话对象”的“大型WebForms应用程序”转换为MVC应用程序时获得的任何优势都将被重写应用程序的成本所淹没。

它甚至不会接近。

几年前,我在健康领域拥有一家价值1-200万美元的年度公司,让他的工程师能够让他重写他们的旗舰产品。他们的动机是他们听说过微软的一项新技术将会是多么美妙(VB6,如果你需要知道 - 最初的技术是德尔福)。

该公司在两年内停业。

产品不仅迟到,功能更少,而且比旧产品更多。他们的比赛?好吧,虽然他们在重写过程中感觉自大和“最新技术”,但竞争对手正在增加功能并改进他们的产品。市场的判断是迅速和残酷的:如果你对自己闪亮的新技术感觉良好,它就不会关心

关于MVC和WebForms,我对两者都非常熟悉,而且我喜欢MVC。但它们只是两种不同的方式来达到同一点,每种方式都有其优点和缺点。重写你的业务所依赖的应用程序只是从一个到另一个的想法对我来说听起来很疯狂。

答案 1 :(得分:1)

本文http://www.asp101.com/articles/jayram/sharestate/default.asp建议将每个网站的一个网络应用程序用作下面的子文件夹(而不是Web应用程序),但这对我来说似乎有点笨拙。

更好的选择是在Web应用程序进程之外使用共享会话存储。 显而易见的选择是SQL状态服务,但如果您不想要数据库,则可以滚动自己的会话提供程序。

如果您只共享少量简单对象,则可以通过表单帖子或查询字符串复制它们。使用文件系统而不是数据库?显然,您必须根据您的要求同步两个网站中的对象。