因为爱GIS,我们聚集于此
  • 快捷登录:

silverlight 实现session

2014-11-27 20:19| 发布者: 美女| 查看: 3088| 评论: 0

摘要: 由于silverlight运行在客户端,我们只能模拟出session 首先定义一个SessionManager类using System; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; ...

由于silverlight运行在客户端,我们只能模拟出session  首先定义一个SessionManager类

 
using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Collections.Generic;

namespace WebUPGIS.controls
{
    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; }
        }

    }
}
再通过各种方式把asp.net的session传递给silverlight  例如
1.通过请求页面 **.apsx?key=value 传给一个包含silverlight的页面 然后 在sl中获取
 
           IDictionary<String, String> paras = HtmlPage.Document.QueryString;
            if (paras.ContainsKey("userName"))
            {
                this.button1.Content = paras["userName"];
            }
2.如果包含silverlight的页面是aspx页面 可以先在页面后台的load中获取session 存放在hidden里面
 
 
最后把session值保存到SessionManager中,例如
 
            HtmlDocument document = HtmlPage.Document;
            string hiddenStr = document.GetElementById("hiddenStr").GetAttribute("value");
            if(hiddenStr!="")
            {
                string[] userInfo = hiddenStr.Split(';');
                SessionManager.Session["userName"] = userInfo[0];
                SessionManager.Session["userID"] = userInfo[1];
            }

            this.button1.Content = SessionManager.Session["userName"].ToString();
 
在需要使用session的地方 用SessionManager.Session["sessionName"] 即可

鲜花

握手

雷人

路过

鸡蛋
相关推荐

最新评论

相关推荐
© 2013-2014 GIS520 ( 陕ICP备14003560号-1 )Powered by Discuz! X3.2 Template by giscafer   
返回顶部