我只是想在我的webrequest中设置一个cookie但由于错误"无法将类型'void'隐式转换为'System.Net.CookieContainer'"而无法执行此操作.
如果下面的代码不起作用 - 你怎么做到这一点?
public static string GET(string url, string cookieValue, string cookieName)
{
string response = "";
Uri target = new Uri(url);
var host = target.Host;
Cookie c = new Cookie(cookieValue, cookieName) { Domain = host };
CookieContainer cookieContainer = new CookieContainer().Add(c);
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Credentials = CredentialCache.DefaultCredentials;
request.Method = "GET";
request.CookieContainer = cookieContainer;
WebResponse response1 = request.GetResponse();
Stream dataStream = response1.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
response = reader.ReadToEnd();
reader.Close();
response1.Close();
return response;
}
Run Code Online (Sandbox Code Playgroud)
您的表达式尝试"链接"实例创建new和调用Add.C#允许这样,但该表达式的结果类型是 Add返回类型,即void不能分配给任何东西.
你需要分开这一行
CookieContainer cookieContainer = new CookieContainer().Add(c);
Run Code Online (Sandbox Code Playgroud)
分为两个:
CookieContainer cookieContainer = new CookieContainer();
cookieContainer.Add(c);
Run Code Online (Sandbox Code Playgroud)
或使用{- }语法进行调用Add:
CookieContainer cookieContainer = new CookieContainer {
c
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
539 次 |
| 最近记录: |