次のコントローラー アクションがあります。
public class Foo
{
public ActionResult Bar(int? barId)
{
...
}
}
このアクションに対応するルートは次のようになります。
routes.MapRoute("Foobar", "bar/{barId}",
new { controller = "Foo", action = "Bar", barId = UrlParameter.Optional },
new { barId = @"^[0-9]+$" });
私の見解では、ルートを次のように生成しています。
@Url.Action("Bar", "Foo", new { barId = bar.BarId })
についてbar.BarId = 32
、期待される URL を受け取ります/Foo/32
null
しかし、値のルートも次のように生成したいと思います。
@Url.Action("Bar", "Foo", new { barId = (int?)null })
ただし、これについては、のURLを受け取ります/Foo?barId=currentBarId
現在表示しているページのはどこcurrentBarId
にありますか。barId
Bar
私は何を間違っていますか?