我正在开发一个应用程序,它将有经销商徽标图像的友好URL,我想使用ImageResizer的SqlReader插件。
在我在他们的网站上阅读的示例中,您可以使用相同的路径(例如~/databaseimages/{id}
)轻松地从SQL托管文件,但我真的希望能够做一些事情来影响~/michigan/dealers/{id}/logo.jpg
密歇根州可能是任何州名。
是否可以拥有多部分ID(状态和ID)并且文件名是静态的,如我所示,还是有更好的方法来执行此操作?!如果我不必,我真的不想更改网址。
解决方案 根据接受的答案,这是我使用的URL重写解决方案
<rewrite>
<rules>
<rule name="Rewrite to dealerlogos SqlReader" stopProcessing="true">
<match url="^([_0-9a-z-]+)/dealers/([_0-9a-z-]+)/logo.jpg" />
<action type="Rewrite" url="dealerlogos/{R:2}?regionSlug={R:1}" appendQueryString="true" redirectType="Found" />
</rule>
</rules>
</rewrite>
答案 0 :(得分:1)
您可以使用任何类型的URL重写来执行此操作。
ImageResizer提供了一个内置事件ImageResizer.Configuration.Config.Current.Pipeline.Rewrite
,如果您只想为ImageResizer请求重写路径,可以附加处理程序。