首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > CAD教程 >

关于silverlight实现session,该怎么处理

2012-03-04 
关于silverlight实现session弱弱的文一下 silverlight怎么实现session的效果啊,我发现我做的时候没办法实

关于silverlight实现session
弱弱的文一下 silverlight怎么实现session的效果啊,我发现我做的时候没办法实现哦。。。不用cookies,这样不安全,还有什么办法实现啊??

[解决办法]
Session是属于服务器端的概念,Silverlight作为客户端没有Session,但是你可以通过Web service传送变量到服务器端,可以将session保存在web service,以便下一次调用。如果使用Session,需要兼容ASP.NET,所以需要进行以下设置:

1. 在web.config, 找到system.serviceModel, 加入下面代码:
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>

2. 在你的WCF service类, 加入属性:
[AspNetCompatibilityRequirements(RequirementsMode=AspNetCompatibilityRequirementsMode.Allowed)]

3. 最后根据下面的代码来调用asp.net Session
HttpContext.Current.Session["YourName"] = something;
object something = HttpContext.Current.Session["YourName"];


另外,如果安全性要求不高,推荐使用Isolatedstorage,开发比较容易,退出时候,删除清空就好。

C# code
using System;using System.Collections.Generic;namespace SessionDemo{    public static class SessionManager    {        private static Dictionary<string, object> session = new Dictionary<string, object>();        public static Dictionary<string, object> Session        {            get { return SessionManager.session; }            set { SessionManager.session = value; }        }    }}SessionManager.Session["uname"] = "jv9";txbUname.Text = SessionManager.Session["uname"].ToString(); 

热点排行