0

我有以下路线

        routes.MapRoute(
            "Segnalazioni_CercaSegnalazioni",
            "Segnalazioni/CercaSegnalazioni/{flag}",
            new { controller = "Segnalazioni", action = "CercaSegnalazioni", flag = 7 }
        );

映射到 SegnalazioniController 类的以下方法:

    public ActionResult CercaSegnalazioni(int flag)
    {
        ViewData["collezioneSegnalazioni"] = Models.Segnalazioni.Recupera(flag);
        System.Xml.Linq.XElement x = (System.Xml.Linq.XElement)ViewData["collezioneSegnalazioni"];
        return View("Index");
    }

链接怎么http://localhost:1387/Segnalazioni/CercaSegnalazioni/1给我错误

The parameters dictionary contains a null entry for parameter 'flag' of non-nullable type 'System.Int32' for method 'System.Web.Mvc.ActionResult CercaSegnalazioni(Int32)' in 'RecuperoPagatiMvc.Controllers.SegnalazioniController'. To make a parameter optional its type should be either a reference type or a Nullable type.
Nome parametro: parameters 
4

2 回答 2

1

发布您的所有路线。听起来您的 URL 正在由与此不同的路由处理。请记住,列出路线的顺序很重要。因此,如果您在此 URL 可以映射到此路由之前有另一条路由,它会。

于 2009-06-04T17:37:30.593 回答
0

MvcContrib包含路由调试器。使用它,您将看到该 url 调用了哪个路由。这里有一些说明如何启用它

于 2009-06-05T16:08:49.263 回答