首先让我说,我已经找到了解决方案,但我只找到了如何在Web Api中启用会话的方式,这不是我正在寻找的方式。从Web服务访问MVC会话
这是我需要的。在mvc中实现这个最好的方法是什么?假设我有MVC商店应用程序。我也有移动应用程序,它使用web api来访问我的应用程序。假设用户将2件物品添加到购物车,那么他必须离开,并决定继续使用移动应用程序购物。他又增加了2个项目。所以他应该有4辆车。然后他回到家中,刷新了他的页面,并显示他的购物车中有4件物品。那么......在web api和mvc项目之间共享购物车的最佳方法是什么?我不想只将它存储在数据库中,并且一直读写数据库。
第二个问题。有没有任何选择让知道移动应用程序,该用户刚刚添加到他的购物车没有移动应用程序ping通web api这种信息的所有时间?
实际上,最好为此使用数据库。如果您使用InProc会话,则应用程序无法缩放。如果你使用SQL Session,那么......你在一个框架上使用了一个数据库。更好地将用户的会话存储在键/值表中的数据库中的json中:key是UserID(或SessionID),value是包含会话数据的json字符串。把一个索引放在关键字上,这样perf就不是问题了:如果你和你的应用可以轻松扩展。 – frenchie