在 HttpCookieCollection.Get MSDN 文档 中,它说道:
如果指定名称的 cookie 不存在,该方法将创建一个新的 cookie,并使用该名称。
当从“真实”Web服务器调用 HttpContext.Request.Cookies
或 HttpContext.Response.Cookies
时,这是正确的,并且可以正常工作。
然而,以下代码:
HttpCookieCollection foo = new HttpCookieCollection();
HttpCookie cookie = foo.Get("foo");
Console.WriteLine(cookie != null);
显示False
(cookie
为空)。
如果从HTTP处理程序中的Request.Cookies
检索HttpCookieCollection
,则情况并非如此。
是否有任何问题/需要其他设置?
我问这个问题是因为我编写单元测试,而我模拟了HttpContextBase,因此没有提供“真实”的上下文。
感谢您的帮助。