1

我有一个 MVC 3 应用程序,我们在 Web 浏览器控件内的手持设备上运行。这些设备运行 CE5 或 CE6。

在 CE5 上请求图像时,图像显示正常,但在 CE 6 上,图像似乎正在下载,但直到单击页面后才真正出现。

一旦发生这种情况,图像就会被缓存(以某种方式),并且可以继续进行该会话。

有没有其他人遇到过这个问题?

这是我能找到的唯一提及该问题但未提及解决方案的其他页面:

http://social.msdn.microsoft.com/Forums/en-US/vssmartdevicesvbcs/thread/0396d869-2ac2-4d38-8565-2d308eb8573a/

编辑:

视图代码如下。Model.DisplayItem 将返回一个字符串,如:

~/Areas/R2D2Picking/内容/图像/M00119.jpg

实际图像位于单独的驱动器上(而不是解决方案的一部分),因此我们通过在解决方案中创建文件夹结构来访问这些图像,将其从构建中排除并在 IIS 的相关根目录下创建一个虚拟目录。我们在许多应用程序中都使用这种方法,所以我不认为这本身就是一个问题。

@using R2D2Picking.Models.ViewModels;
@using System.IO;
@using System.Net;

@model ItemImageVM        

<div class='backImage'>

    <a href="@Url.Action("PickSelectedItems", "Common")" onfocus="if(this.blur)this.blur()">
    <img alt='' src="@Url.Content("~/Areas/R2D2Picking/Content/ButtonImages/BackButton.bmp")" /></a>

</div>

<div class='smallPrompt'>
    <p>@Model.DisplayLiteral</p>
</div>

@if (Model.ImageExists())
{
    <div class='itemImage'>
        <a href="@Url.Action("PickSelectedItems", "Common")">
        <img alt='' src="@Url.Content(@Model.DisplayItem)" /></a>
    </div>
}
else
{
    <div class='noImage'>
        <a href="@Url.Action("PickSelectedItems", "Common")">
        <img alt='' src="@Url.Content("~/Areas/R2D2Picking/Content/ButtonImages/no_picture.bmp")" /></a>
    </div>
}

示例图像如下:

在此处输入图像描述

4

0 回答 0