我想使用此代码:
public void SendFile(string uri, string filepath)
{
using (var client = new WebClient())
{
client.Headers.Add("Content-Type", "application/xml");
byte[] response = client.UploadFile(uri, "POST", filepath);
return Encoding.ASCII.GetString(response);
}
}
...但我得到了可怕的“无法找到类型或命名空间名称'WebClient'(您是否缺少using指令或程序集引用?)”
根据this,WebClient 在.NET 3.5中可用(这是一个.NET 3.5 / Windows CE项目)。
这是不可靠的,因为这是一个Windows CE / Compact Framework项目,Visual Studio假装它无法识别WebClient?是否有一种解决方法,或者我是否会注定失败?
答案 0 :(得分:1)
您解释MSDN链接的方式完全错误,但可以理解。
Microsoft决定在“隔离的”#34;中构建.NET Compact Framework / XNA / Silverlight。所以你不能依赖于一般的MSDN链接来判断一个类是否在这样的翻录框架中可用。
http://msdn.microsoft.com/en-us/library/w8xd02k7(v=vs.90).aspx
http://msdn.microsoft.com/en-us/library/ms172548(v=vs.90).aspx
Visual Studio正巧妙地遵循这些解决规则,告诉您WebClient
类不存在。
以CF为目标的开发人员注定要失败,你必须寻找替代品,有时候复制Mono的源代码才能完成某些任务。
由于Microsoft开源.NET核心源代码,您也可以在https://github.com/dotnet/corefx
时复制其源文件。