mvc5 HTTP错误404.0 - 找不到详细信息ActionResult

时间:2016-03-23 06:18:09

标签: asp.net-mvc-5

这是我的actionlink

@Html.ActionLink("Details", "Details", new { id = item.WarehouseID })

它为我提供了这个链接http://localhost:6587/WareHouse/Details/1.00000000

控制器

public ActionResult Details(decimal? id)
{
    Warehouse Warehouse = db.Warehouse.Find(id);
    return View(Warehouse);
}

当我将操作链接更改为

@Html.ActionLink("Details", "Details", new { WareHouseID = item.WarehouseID })

检索链接为queryString它运作良好

public ActionResult Details(decimal? WareHouseID) 
{
    Warehouse Warehouse = db.Warehouse.Find(WareHouseID);
    return View(Warehouse);
}

但正如它给我的身份

  

HTTP错误404.0 - 未找到

我试图通过调试来跟踪它 但它没有进入细节actionResult与该链接 http://localhost:6587/WareHouse/Details/1.00000000

我的路线配置

using System.Web.Routing;

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

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

1 个答案:

答案 0 :(得分:0)

这是因为点。我发现,如果我使用trailling斜杠它运行良好,那是因为没有尾部斜杠,IIS认为它应该去找一个文件。添加斜杠会产生......这不是真正的文件...所以我现在正在尝试做一些事情。

细节 Dots in URL causes 404 with ASP.NET mvc and IIS