silverlight中怎样把值保存到session

silverlight中,怎样把值保存到session中???谢谢,能有实例最好了,简单点的就行.

共有1个回答
  • waycleamapype - 1年前

    silverlight是运行在客户端的,session是服务器端的,想把一个对象保存在session里面只有在访问一次服务器端。

    以下是一个真实的session和一个客户端的"session"的实现;

    方法一、通过WCF使用ASP.NET中的Session(因BasicHttpBinding不支持WCF中的Session,如使用WCF会话将报错)

    首先:在web.config中<system.serviceModel >下添加:

    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>

    然后:在服务类[不是接口]下添加如下属性:

    [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]

    接下来就可以使用Session记得添加System.Web的引用

    HttpContext.Current.Session["YourName"] = something;
    
    object something = HttpContext.Current.Session["YourName"];

    方法二、在客户端新建一个静态类模拟Session

    如要保存登陆信息,可在验证了用户名、密码之后在客户端保存相关信息。

    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"] = "kunal";


    取值:
    txbUname.Text = SessionManager.Session["uname"].ToString();