2011-10-22 64 views
1

網址我有這樣的路徑路線MVC

鑑於

<img src="PhotoDisplay.ashx?photoid=12&size=medium" alt="Image with no resize"/> 

我想路由的源鏈接到一個動作。我必須使用這種網址格式,因爲我正在重建一個網站。所以我想讓所有的鏈接都在新網站上。 在Global.asax中我加入了潰敗像圖所示

routes.MapRoute(
      "PhotoDisplay", "PhotoDisplay.ashx?photoid={photoID}&size={size}", 
      new { controller = "Images", action = "PhotoDisplay", photoid= "",size="" } 
    ); 

但它給錯誤而編制。如何,我能爲那種

回答

1

查詢字符串參數不應該在一個路由定義URL映射路徑。試試這樣:

routes.MapRoute(
    "PhotoDisplay", 
    "PhotoDisplay.ashx", 
    new { controller = "Images", action = "PhotoDisplay" } 
); 

和控制器動作:

public ActionResult PhotoDisplay(string photoid, string size) 
{ 
    ... 
} 
+0

沒有運氣:(不能正常工作 –

+1

@NullPointer,'不working'是我最喜歡的問題描述它是如此詳細,明確的說我。真的不知道你怎麼能做出這麼好的和詳細的描述,所以回到正題:什麼是不工作的?你是否得到一個異常?你的完整路由定義是什麼樣子的?你測試了什麼url?什麼控制器你有沒有定義?在哪個Web服務器上進行測試?一旦你回答了這些問題,我們就可以理解到底發生了什麼,因爲我在這裏展示的代碼工作正常當我創建一個新的應用程序並運行在內置服務器上時,它對我來說非常好。 –

+0

我的錯誤。下次我會嘗試解釋更多。 :(對不起。它工作正常。我給出的URL有一個錯誤。謝謝你的回答。這不是你第一次給我答案。再次感謝 –