C# 从客户端访问cookie

C# 从客户端访问cookie,c#,jquery,asp.net-mvc,razor,cookies,C#,Jquery,Asp.net Mvc,Razor,Cookies,我已在控制器上设置cookie: HttpCookie loggedIn = new HttpCookie("LoggedIn", "true"); Request.Cookies.Add(loggedIn); 我正在尝试访问此文档,准备好了吗 $( document ).ready(function() { if ('@Request.Cookies["LoggedIn"]' != null) { var loggedIn = '@Request.Cookies["

我已在控制器上设置cookie:

 HttpCookie loggedIn = new HttpCookie("LoggedIn", "true");
 Request.Cookies.Add(loggedIn);
我正在尝试访问此文档,准备好了吗

$( document ).ready(function() {
   if ('@Request.Cookies["LoggedIn"]' != null) {
        var loggedIn = '@Request.Cookies["LoggedIn"].Value';
        console.log("Logged In " + loggedIn);
    }

});
这一直是空的吗


有什么想法吗?

您实际上不是从客户端JavaScript访问cookie。即使将cookie发送回浏览器,代码也会忽略该cookie,并尝试通过Razor扩展访问它。我想这可能行得通,但这似乎是一种迂回的方式

您可以通过
document.cookie
属性从JavaScript访问cookie,该属性是
带分隔符的Cookie列表

因为您使用的是jQuery,所以更简单的方法是使用插件

更新:我刚刚意识到您正在请求中设置cookie。您应该在响应中设置它:

Response.SetCookie(loggedIn);

我试过了,但它仍然显示为null,因为我在部分视图中加载,这会对它有任何影响吗?
Response.SetCookie(loggedIn);