プロジェクト内の場所から画像を提供する ImageController を作成しました。今、「/Image/file.png」からコントローラーにルーティングしようとしていますが、うまくいかないようです。コントローラーが呼び出されることはありません (アクションの最初の行にブレークポイントを設定しましたが、ブレークすることはありません)。
私のルート:
routes.MapRoute(
"Image",
"Image/{file}",
new { controller = "Image", action = "Render", file = "" }
);
私のイメージコントローラー:
public class ImageController : Controller
{
//
// GET: /Image/
public ActionResult Render(string file)
{
var path = this.getPath(file);
System.Diagnostics.Debug.WriteLine(path);
if (!System.IO.File.Exists(path))
{
return new HttpNotFoundResult(string.Format("File {0} not found.", path));
}
return new ImageResult(path);
}
private string getPath(string file)
{
return string.Format("{0}/{1}", Server.MapPath("~/Content/Images"), file);
}
}
プロジェクトが "Images/{file}" からコントローラーにルーティングされないのはなぜですか?