从静态类编写cookie

Str*_*gon 2 c# asp.net

我的解决方案中有一个静态类,它基本上使用了一个helper/ultility类.

在其中我有以下静态方法:

// Set the user
    public static void SetUser(string FirstName, string LastName)
    {
        User NewUser = new User { Name = String.Format("{0}{1}", FirstName, LastName) };
        HttpCookie UserName = new HttpCookie("PressureName") { Value = NewUser.Name, Expires = DateTime.Now.AddMinutes(60) };       

    }
Run Code Online (Sandbox Code Playgroud)

用户是一个简单的类,包含:

  String _name = string.Empty;

    public String Name
    {
        get { return _name; }
        set { _name = value; }
    }
Run Code Online (Sandbox Code Playgroud)

一切正常,直到我尝试编写cookie"PressureName"并从NewUser.Name插入其中的值.从单步执行代码看来,cookie永远不会被写入.

我犯了一个明显的错误吗?我在c#仍然非常业余,任何帮助将不胜感激.

Guf*_*ffa 5

创建cookie对象不足以将其发送到浏览器.您还必须将它添加到Response对象.

由于您使用的是静态方法,因此您无法直接访问页面上下文及其Response属性.使用该Current属性从静态方法访问当前页面的Context:

HttpContext.Current.Response.Cookies.Add(UserName);
Run Code Online (Sandbox Code Playgroud)