1

Web ブラウザー コントロール内のハンドヘルドで実行する MVC 3 アプリケーションがあります。デバイスは CE5 または CE6 を実行します。

CE5 で画像が要求されると、画像は正常に表示されますが、CE 6 では画像がダウンロードされたように見えますが、ページがクリックされるまで実際には表示されません。

これが発生すると、イメージは (どういうわけか) キャッシュされ、そのセッションではうまくいきます。

他の誰かがこの問題に遭遇しましたか?

これは、問題について言及している唯一の他のページですが、解決策については言及されていません。

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

編集:

ビューコードは以下です。Model.DisplayItem は次のような文字列を返します。

~/エリア/R2D2Picking/Content/images/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