1

ASP.NET MVC 4 プロジェクトでImageResizerモジュールをプラグイン SqlReader および MvcRoutingShim と共に使用しています。

~/databaseimages/123.jpg(たとえば) URL にアクセスしようとすると、標準エラーが表示されます。404 - The resource cannot be found.

私の期待は、ImageResizer がその要求を処理し、データベースから画像を読み取ろうとすることでしたが、接続しようとさえしませんでした (これを確認するために SQL プロファイラーを使用しました)。

何が間違っている可能性がありますか?

これは /resizer.debug の出力です:

Image resizer diagnostic sheet      26-06-2012 20:42:57

1 Issues detected:

(Warning):  To potentially see additional errors here, perform an image resize request.



You are using paid bundles: Cloud Bundle, Performance Bundle

Registered plugins:

ImageResizer.Plugins.Basic.DefaultEncoder
ImageResizer.Plugins.Basic.NoCache
ImageResizer.Plugins.Basic.ClientCache
ImageResizer.Plugins.Basic.Diagnostic
ImageResizer.Plugins.Basic.SizeLimiting
ImageResizer.Plugins.MvcRoutingShim.MvcRoutingShimPlugin
ImageResizer.Plugins.SqlReader.SqlReaderPlugin
ImageResizer.Plugins.DiskCache.DiskCache

Configuration:

<resizer>
<plugins>
<add name="MvcRoutingShim" />
<add name="SqlReader" prefix="~/databaseimages/" connectionString="database" idType="UniqueIdentifier" blobQuery="SELECT Content FROM Images WHERE ImageID=@id" modifiedQuery="Select ModifiedDate, CreatedDate From Images WHERE ImageID=@id" existsQuery="Select COUNT(ImageID) From Images WHERE ImageID=@id" requireImageExtension="false" cacheUnmodifiedFiles="true" extensionPartOfId="false" vpp="true" untrustedData="false" />
<add name="DiskCache" />
</plugins>
</resizer>

(...)

4

1 に答える 1

1

Web.config ファイルで、イメージ ID がすべて GUID: であることを宣言しidType="UniqueIdentifier"ましたが、url: で整数を使用しましたlocalhost:50272/databaseimages/123.jpg

<add name="SqlReader" prefix="~/databaseimages/" connectionString="database" 
 idType="UniqueIdentifier" requireImageExtension="false" 
 cacheUnmodifiedFiles="true" extensionPartOfId="false"
 vpp="true" untrustedData="false" />

URL で GUID を指定していない場合、要求は無視されます。idType を Int などの別のデータ型に変更するか、URL で正しいデータ型を使用してください。

ソース: http://imageresizing.net/plugins/sqlreader

于 2012-06-26T21:33:12.300 に答える