尝试用 C# 进行基本的 Web 客户端数据拉取,这些方法在 Visualstudio 中不可用,并且代码无法编译。
//snip
WebClient client = new WebClient();
byte[] resp = client.DownloadData(url);
//snip
错误 1“System.Net.WebClient”不包含“DownloadData”的定义,并且找不到接受“System.Net.WebClient”类型的第一个参数的扩展方法“DownloadData”(您是否缺少 using 指令或程序集引用?) C:\Users\Michael\Documents\Visual Studio 2008\Projects\search2\search2\MainPage.xaml.cs
我正在 XAML/Silverlight 项目的 C# 文件中执行此操作,但无法想象为什么这会产生影响。我在网络上找不到任何对此问题的参考,上个月我也有类似的工作,但在常规 ASP.NET 页面中,而不是在 Silverlight 应用程序中。
Silverlight 仅具有完整 .NET 功能的子集。更值得注意的是,它不包含blocking与 Web 服务通信的方法。这使程序员的生活变得有点困难,但对用户来说却是一件奇妙的事情 - 您无法(轻松)编写在服务器无法快速响应时挂起的 Silverlight 应用程序。
如果您可以将数据作为文本传输,则可以使用DownloadStringAsync
method:
var wc = new WebClient();
wc.DownloadStringCompleted += (sender, e) => {
string data = (string)e.Result;
// Process the data here
}
wc.DownloadStringAsync(new Uri(address));
如果您需要传输二进制数据,那么您可能必须使用HttpWebRequest 类 http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest(VS.95).aspx明确地。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)