1

プロジェクト内の場所から画像を提供する 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}" からコントローラーにルーティングされないのはなぜですか?

4

1 に答える 1