我正在开发一个使用需要登录的 RESTful Web 服务的应用程序。此登录使用会话 cookie 进行验证,并使用 下载任何数据WebClient
,我使用了以下扩展名:
public class CookieWebClient : WebClient
{
[SecuritySafeCritical]
public CookieWebClient() : base()
{
}
protected override WebRequest GetWebRequest(Uri address)
{
var request = base.GetWebRequest(address);
if (request is HttpWebRequest)
{
(request as HttpWebRequest).CookieContainer = App.GlobalCookieContainer;
}
return request;
}
}
但是,返回的一些数据是图像缩略图的 URI,它们以不同的ListBoxes
. 在我不得不为 Web 服务使用登录之前,我只是将 绑定ImageSource
到数据中的指定 URI:
<Image Source="{Binding Icon_Url}" />
但是,既然我必须使用登录,我必须在获取图像时提供一个 cookie。因此,我认为 anIValueConverter
可以解决问题,我将在其中传递 URI,然后BitmapImage
使用我的扩展下载WebClient
,直到我记得我只能WebClient
在 WP7 上进行异步调用。
所以我的问题是
如何下载请求中必须有 cookie的Image
控件的图像?LisBoxItem
谢谢!