我知道Azure如何保留SESSION状态 - 我已经在我的应用程序中使用基于Neil MacKenzie的 Microsoft Windows Azure开发手册的AppFabric实现了它。但是,基于AppFabric的方法显然不会保留应用程序所需的应用程序状态(例如 Application [“name”] = MyObject )。
我怀疑我需要使用Azure表,但这需要重新编码。因此,在走这条路之前,我想知道是否有一种更简单的方法来保留应用程序状态,最好是不需要重新编码我的应用程序。
谢谢,
比尔
答案 0 :(得分:7)
对不起,没有什么比直接替换Application [key]方法更好了。
您最好的选择是使用Azure caching。您已经间接使用Azure缓存,我相信,使用上面的书中的方法进行会话状态。
缺点可能是缓存的物品不会永远存在,它们的最大寿命大约为72小时。因此,无论何时访问缓存项,您都必须测试类似于下面的伪代码:
object o = cache.Get("MyItem");
if (o != null){
MyType myType = (MyType) o;
//use the item
}
else
{
//recreate the item
}
答案 1 :(得分:0)
值得注意的是,Microsoft建议将SQL数据库作为服务器端状态管理的首选存储方式。
虽然我会坚持使用Chris提到的Azure缓存。