gpt4 book ai didi

c# - webclient 方法不适用于我的 Silverlight 应用程序

转载 作者:太空狗 更新时间:2023-10-30 00:46:48 35 4
gpt4 key购买 nike

尝试在C#中做基本的webclient数据拉取,visualstudio中没有方法,代码编译不通过。

        //snip
WebClient client = new WebClient();
byte[] resp = client.DownloadData(url);
//snip

错误 1 ​​'System.Net.WebClient' 不包含 'DownloadData' 的定义,并且找不到接受类型为 'System.Net.WebClient' 的第一个参数的扩展方法 'DownloadData'(您是否缺少使用指令或程序集引用?) C:\Users\Michael\Documents\Visual Studio 2008\Projects\search2\search2\MainPage.xaml.cs

我在 XAML/Silverlight 项目的 c# 文件中执行此操作,但无法想象为什么这会有所不同。我在网上找不到任何关于这个问题的引用,上个月我有类似的东西,但在常规的 ASP.NET 页面中,而不是在 Silverlight 应用程序中。

最佳答案

Silverlight 仅具有完整 .NET 功能的一个子集。更值得注意的是,它不包含用于与 Web 服务通信的阻塞方法。这让程序员的生活有点困难,但对用户来说却是一件了不起的事情——您不能(轻松地)编写在服务器没有快速响应时会挂起的 Silverlight 应用程序。

如果您可以将数据作为文本传输,则可以使用DownloadStringAsync 方法:

var wc = new WebClient();
wc.DownloadStringCompleted += (sender, e) => {
string data = (string)e.Result;
// Process the data here
}
wc.DownloadStringAsync(new Uri(address));

如果您需要传输二进制数据,那么您可能必须使用HttpWebRequest class。明确地。

关于c# - webclient 方法不适用于我的 Silverlight 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2308578/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com