if (HostingEnvironment.IsHosted)
            {
                HttpContext context = HttpContext.Current;
                if (context != null)
                {
                    return context.User.Identity.Name;
                }
            }
            IPrincipal principal = Thread.CurrentPrincipal;
            if ((principal != null) && (principal.Identity != null))
            {
                return principal.Identity.Name;
            }
            return string.Empty;

解决方案 »

  1.   

    请大家告诉我上面是什么意思!? 我大约占到是什么意思 好像读到了当前登录的用户名
        我想知道 我这边做的一个 单点登录 就是在另外一个网页登录 我在这个里面来读取那个网页的 cookie 急
      

  2.   

    不是用Request.Cookies["user"].value;吗?
    如不是的话我认为上边的就是得到cookie中的用户名的方法吧
      

  3.   

    取cookie
    if(Request.Cookies["userName"] != null)
    {
        HttpCookie aCookie = Request.Cookies["userName"];
        Label1.Text = Server.HtmlEncode(aCookie.Value);
    }ASP.NET Cookies FAQ
      

  4.   

    这个可不是操作COOKIE的代码
    好像是获取当前请求的用户名的
      

  5.   


    引用内容  //写入
      protected void Button1_Click(object sender, EventArgs e)
      {
        HttpCookie cookie=new HttpCookie("MyCook");//初使化并设置Cookie的名称
        DateTime dt=DateTime.Now;
        TimeSpan ts = new TimeSpan(0, 0, 1,0,0);//过期时间为1分钟
        cookie.Expires = dt.Add(ts);//设置过期时间
        cookie.Values.Add("userid", "userid_value");
        cookie.Values.Add("userid2","userid2_value2");
        Response.AppendCookie(cookie);
        //输出该Cookie的所有内容
        //Response.Write(cookie.Value);//输出为:userid=userid_value&userid2=userid2_value2 
      }  //读取
      protected void Button2_Click(object sender, EventArgs e)
      {    // HttpCookie cokie = new HttpCookie("MyCook");//初使化
        if (Request.Cookies["MyCook"]!=null)
        {
          //Response.Write("Cookie中键值为userid的值:" + Request.Cookies["MyCook"]["userid"]);//整行
          //Response.Write("Cookie中键值为userid2的值" + Request.Cookies["MyCook"]["userid2"]);
          Response.Write(Request.Cookies["MyCook"].Value);//输出全部的值
        }
      }  //修改Cookie
      protected void Button3_Click(object sender, EventArgs e)
      {
        //获取客户端的Cookie对象
        HttpCookie cok = Request.Cookies["MyCook"];
            
        if (cok != null)
        {
          //修改Cookie的两种方法
          cok.Values["userid"] = "alter-value";
          cok.Values.Set("userid", "alter-value");      //往Cookie里加入新的内容
          cok.Values.Set("newid", "newValue");
          Response.AppendCookie(cok);
        }      
      }  //删除Cookie
      protected void Button4_Click(object sender, EventArgs e)
      {    HttpCookie cok = Request.Cookies["MyCook"];
        if (cok != null)
        {
          if (!CheckBox1.Checked)
          {
            cok.Values.Remove("userid");//移除键值为userid的值
          }
          else
          {
            TimeSpan ts = new TimeSpan(-1, 0, 0, 0);
            cok.Expires = DateTime.Now.Add(ts);//删除整个Cookie,只要把过期时间设置为现在
          }
          Response.AppendCookie(cok);
        }
      }
      

  6.   

    1)要采用Form认证方式,在web.config中配置
    2)在登陆页面中,写入cookie,  ,,,  FormsAuthentication.SetAuthCookie(user_id, false);
     Context.User.Identity.Name; 读出的就是user_id的值
      

  7.   


    // 写cookie
    HttpCookie cookie = new HttpCookie("Info");//定义cookie对象以及名为Info的项
    DateTime dt = DateTime.Now;//定义时间对象
    TimeSpan ts=new TimeSpan(1,0,0,0);//cookie有效作用时间,具体查msdn
    cookie.EXPires = dt.Add(ts);//添加作用时间
    cookie.Values.Add("user","cxbkkk");//增加属性
    cookie.Values.Add("userid","1203");
    Response.AppendCookie(cookie);//确定写入cookie中        读取cookie
    if(Request.Cookies["Info"]!=null)
    {
         string temp=Convert.ToString(Request.Cookies["Info"].Values["user"])+"  "+Convert.ToString(Request.Cookies["Info"].Values["userid"]);
        //读全部就用Request.Cookies["Info"].Value)
         if(temp=="")
         {
             Response.Write("空");
         }
         else
            Response.Write(temp);
    }
    else
    {
        Response.Write("error");
    }        修改cookie
    Response.Cookies["Info"]["user"] = "2";
    Response.Cookies["Info"].Expires = DateTime.Now.AddDays(1);      // 删除cookie下的属性
    HttpCookie acookie=Request.Cookies["Info"];
    acookie.Values.Remove("userid");
    acookie.Expires = DateTime.Now.AddDays(1);
    Response.Cookies.Add(acookie);        删除所有cookie,就是设置过期时间为现在就行了
    int limit=Request.Cookies.Count - 1;
    for(int i=0;i<limit;i++)
    {
       acookie = Request.Cookies(i)
       acookie.Expires = DateTime.Now.AddDays(-1)
       Response.Cookies.Add(acookie)
    }
    // 读取所有 cookies
    HttpCookieCollection cookies;
    HttpCookie oneCookie;
    cookies = Request.Cookies;string[] cookieArray = cookies.AllKeys;
    for (int i=0; i < cookieArray.Length; i++) 
    {
     oneCookie = cookies[cookieArray[i]];
     Response.Write(oneCookie.Name + " - " + oneCookie.Value);
    }// 添加单个cookies
    if (Request.Browser.Cookies == true)
    {
     if (Request.Cookies["LastVisited1"] == null)
     {
      HttpCookie newCookie = new HttpCookie("LastVisited1",DateTime.Now.ToString());
      newCookie.Expires = DateTime.Now.AddYears(1);
      Response.Cookies.Add(newCookie);
     } 
     else 
     {
      Response.Write(Request.Cookies["LastVisited1"].Value);
     }  
    }