カスタムハンドラーを使用して、画像をロードする際に非常に厄介で奇妙な問題に遭遇しました(画像のランタイムをマスクする必要があります)。
チェックアウトできるWeb サイト: http://utazovilag.hu/Test/Stack/Main.aspx
基本: 上で述べたように、実行時にイメージを読み込んで変更するために、カスタム イメージ ハンドラーを使用します。このサイトではさまざまな旅行を提供しており、それぞれが頻繁に変更されています (主に価格の変更)。各ホテルには独自の写真のセットがあり、その上に「広告」バー (テキスト付きの半透明の黒い長方形) を配置します。このハンドラーは、イメージ (一部はローカル サーバーから、一部は別の URL ソースから) を読み込み、必要なテキストと画像をその上に描画してから、応答ストリームで画像自体を返します。
The error: The above should work well, but strangely, the pictures itself sometimes simply dont load at all. (if you check the site on the above link, you can see it for yourself - there should be six pictures, inside a rouded bluish border). When I refresh the page, pictures appear and disappear, without any (for me) logical pattern.
I narrowed down the problem as best as I could.
The imageHandler itself will give back the exatly same pictures each time, no matter if it gets any URL or not.
The problem is with the ImageBoxes (I think). When I give the "plain" url (one without any parameter, even when the handler dont even check if there any parameter)
When I add the URL for the imageBoxes (this one:http://utazovilag.hu/Test/GetTestImage.ashx) this will give the perfectly good image back, and each imagebox will load without any error.
When I add the URL with SAME parameters, its work like as it should (like: http://utazovilag.hu/Test/GetTestImage.ashx?OID=0&PID=0&SID=0) it works as it should.
(And now, the error) when I add an URL with different parameters, its make the pictures randomly pop up and dissapear between each refresh (this what you can see on the link I gave you above) Like this: http://utazovilag.hu/Test/GetTestImage.ashx?OID=0&PID=0&SID=0 And this: http://utazovilag.hu/Test/GetTestImage.ashx?OID=1&PID=0&SID=0
しかし、「画像の更新」ボタンを押すと、画像が正常に表示されます。GetTestImage.ashx に直接アクセスしようとすると、正常に表示されます。負荷の問題は、URL が異なる複数の画像ボックスがある場合にのみ発生します。
私は単にアイデアを使い果たしただけで、なぜこれが起こっているのか想像できません. 最も基本的な imageHandler を作成しようとしました (イメージをロードし、バイト配列を作成し、それをユーザー向けのストリームにプッシュするだけです)。さまざまなブラウザー (Firefox、IE、Chrome) を試しましたが、すべて同じエラーが発生します (または、単に画像が表示されないため、エラーは発生しません)。
どんなアイデアでも本当に感謝しています。
編集: これが私の imageHandler です: http://pastebin.com/FjjUmNzW
Edit1: 言い忘れました: ローカル マシンでは正常に動作しますが、サーバーで実行しようとするとこのエラーが表示されます。
Edit2:ハンドラーコードも更新しました。ログを要求する場所を示しました。