微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用ASP.NET Core添加新的持久性Cookie

如何解决使用ASP.NET Core添加新的持久性Cookie

我是ASP.NET的新手,正在尝试添加新的cookie。我正在使用ASP.NET 3.1.401版,并且在我的homecontroller文件中,我尝试遵循此规则:How to create persistent cookies in asp.net?我有一个使用声明using System.Web,并且在我的homecontroller类中,我有一个类似于以下内容方法

public IActionResult Index()
{
    @ViewData["timezone"] = Convert.ToString(TimeZoneController.showTimeZone());
    @ViewData["ip"] = IPController.getIP();
    //create a cookie
    HttpCookie myCookie = new HttpCookie("myCookie");

    //Add key-values in the cookie
    myCookie.Values.Add("userid","new_user");

    //set cookie expiry date-time. Made it to last for next 12 hours.
    myCookie.Expires = DateTime.Now.AddHours(12);

    //Most important,write the cookie to client.
    Response.Cookies.Add(myCookie);
    return View();
}

我不断收到以下错误

CS1729: 'HomeController.HttpCookie' does not contain a constructor that takes 1 arguments

CS1061: 'HomeController.HttpCookie' does not contain a deFinition for 'Values' and no accessible extension method 'Values' accepting a first argument of type 'HomeController.HttpCookie' Could be found (are you missing a using directive or an assembly reference?)

如何获取和设置cookie,以及在MVC模式中应该在哪里做?

解决方法

我意识到我的错误是我在macOS上进行开发,因此我使用的是ASP.NET核心而不是ASP.NET。这是一个愚蠢的错误,但是我相信许多初学者都会做到这一点。这是link,有关使用ASP.NET Core时如何设置Cookie。

,

您尝试过吗:

        //Add key-values in the cookie
        myCookie.Values["userid"] = "new_user";

应该可以。另外,请确保您使用的是HttpCookie中的System.Web

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。