如何跳过检查图像可以在每次Windows商店应用程序的URL上找到?

时间:2016-04-15 04:52:28

标签: c# asp.net windows-store-apps

我正在开发用于Windows和平板电脑的Windows应用商店应用。我需要列出产品。

我想设置一个条件:如果URL上没有产品图片,那么它应该使用默认图片。

以下是代码:

//get product list by service call and bind to productList.
foreach(product item in productList)
{
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(item.image.ToString()));
    bool imageexist = false;
    using (var response = (HttpWebResponse)(await Task<WebResponse>.Factory.FromAsync(request.BeginGetResponse, request.EndGetResponse, null)))
    {
        int imagelength = Convert.ToInt32(response.ContentLength);
        if (imagelength > 0)
        {
            imageexist = true;
        }
        else
        {
            imageexist = false;
        }
    }

    if (item.image == "N/A" || imageexist == false)
    {
        item.image = "Images/NoDataImages/ico-no-orders.png";       //default image
    }
}

此处,产品可以是100或更多。所以,每次它都要求检查服务器。

还有其他方法可以检查,因为它每次都要求检查吗?消耗时间。

我已经提到了以下链接。但在所有情况下,我都需要每次调用检查图像。

1- How can I check if an Image exists at http://someurl/myimage.jpg in C#/ASP.NET

2- asp.net check if imageURL exists

3- Test to see if an image exists in C#

请建议使用方式。

1 个答案:

答案 0 :(得分:0)

您可以尝试在模型类中使用INotifyProperty,然后将source设置为ObservableCollection。填充图像可以在绑定列表后以异步方式运行,并且在加载图像时调用NotifyProperty(服务器响应)。