簡體   English   中英

帶字符串參數的Asp.net MVC路由

[英]Asp.net MVC Routing w/ string parameter

我正在學習asp.net,暫時無法解決一個相當簡單的問題。

具有以下內容的RouteConfig.cs文件:

public class RouteConfig {
    public static void RegisterRoutes(RouteCollection routes) {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapMvcAttributeRoutes();

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );
    }
}

並獲得了控制器的內容:

...
[Route("image/show/{uuid}")]
public ActionResult Show(string uuid) {
    return View(uuid);
}
...

而當我嘗試打開此URL的結果

預先感謝您的回復!

它是您的下一行創建問題

return View(uuid);

該行接受控制器的ViewResult View(string viewName)重載。 它正在考慮將您傳入的uuid變量作為視圖名稱,並嘗試通過該名稱查找視圖文件。

作為解決方法,您可以將該行更改為

return View((object)uuid);

這將需要正確的重載ViewResult View(對象模型)或將uuid存儲在viewbag中,並以

return View();

當然,您仍然需要View / Image目錄中的Show.cshtml文件。

該錯誤表明它無法在Views / Images / sdfsd.cshtml中找到cshtml文件。

添加該文件,它應該可以工作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM