我很难理解此语句中的嵌套括号。有人可以解释吗?我知道HttpWebRequest
类根据定义继承了WebRequest
类,但是我不明白为什么这样写,为什么不将请求创建为HttpWebRequest
的实例WebRequest
中的。尝试过,但无法编译。预先感谢。
var request = WebRequest.Create(new Uri(url));
((HttpWebRequest)request).AllowReadStreamBuffering = false;
答案 0 :(得分:0)
那只是将请求投射到HttpWebRequest
请查看文档https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/types/casting-and-type-conversions
答案 1 :(得分:0)
WebRequest.Create可能会返回同一个接口的不同实现,这就是为什么它不能成为构造函数的原因,也是为什么您必须进行类型转换才能真正拥有对类的完全访问权限而不是仅如果您知道将xyz传递给create时的接口,可用的方法将引发接口。如果不是这样,则转换将失败。