19

所以我很困惑,因为 msdn 和其他教程告诉我使用 HttpCookies 通过 Response.Cookies.Add(cookie) 添加 cookie。但这就是问题所在。Response.Cookies.Add 只接受 Cookies 而不是 HttpCookies,我得到这个错误:

无法从“System.Net.CookieContainer”转换为“System.Net.Cookie”

另外,Response.Cookies.Add(cookie) 和 Request.CookieContainer.Add(cookie) 有什么区别?

提前感谢您的帮助,我正在尝试使用 C# 自学。

// Cookie
Cookie MyCookie = new Cookie();
MyCookie.Name = "sid";
MyCookie.Value = SID;
MyCookie.HttpOnly = true;
MyCookie.Domain = ".domain.com";

// HttpCookie
HttpCookie MyCookie = new HttpCookie("sid");
MyCookie.Value = SID;
MyCookie.HttpOnly = true;
MyCookie.Domain = ".domain.com";

Response.Cookies.Add(MyCookie);
4

1 回答 1

13

您正在使用System.Net.HttpWebResponse. 但是上面的示例使用System.Web.HttpResponsewhichSystem.Web.HttpCookie作为参数。

斯科特·艾伦

System.Web.HttpRequest 是在服务器上和 ASP.NET 应用程序内部使用的类。它表示来自客户端的 传入请求。

System.Net.HttpWebRequest 是一个用于向Web 应用程序发出传出请求的类。

于 2009-11-22T19:02:10.953 回答