c# - 具有动态参数的 Asp.net mvc Action

标签 c# asp.net-mvc-4 asp.net-mvc-routing

硕士,

我定义了几条路线如下。

routes.MapRoute(
            name: "Default1",
            url: "{a}",
            defaults: new { controller = "Home", action = "Index" }
        );

        routes.MapRoute(
            name: "Default2",
            url: "{a}/{b}",
            defaults: new { controller = "Home", action = "Index" }
        );

        routes.MapRoute(
            name: "Default3",
            url: "{a}/{b}/{c}",
            defaults: new { controller = "Home", action = "Index" }
        );

        routes.MapRoute(
            name: "Default4",
            url: "{a}/{b}/{c}/{d}",
            defaults: new { controller = "Home", action = "Index" }
        );

在 HomeController 中,

public ActionResult Index(dynamic data)
{
       return View();
}

我在 Index 方法的开头设置了一个断点 现在,当我点击 URL 时:http://{MylocalIP:port}/a/b 坚持断点。 但我无法提取 a 和 b 的路由值。

我们如何做到这一点? 请帮忙。

提前致谢

最佳答案

即使您设法让它工作,您也必须让您的 Controller 操作处理不同的参数。为什么不根据参数的数量创建不同的操作并完全避免这种用法。如果您尝试提供可能并不总是具有值的 Model 属性,则创建一个模型,而不是将动态传递 Model 传递给操作。

关于c# - 具有动态参数的 Asp.net mvc Action ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19812014/

相关文章:

c# - SortedDictionary 是红黑树吗?

asp.net-mvc-4 - 如何根据用户访问的位置在 MVC 应用程序中查找用户的国家/地区、州(地区/县/省)和城市?

c# - 如何使 HttpContext 在同步调用的任务中可用?

具有可选 URL 段的 ASP.NET 路由

C# 使用泛型类型简化构造函数中的属性选择器

java - Java CharSequence 类型的 C# 等价物是什么?

c# - Form.DesktopBounds.Width 似乎偏离了 10 个像素。如何确定正确的表格宽度?

asp.net-mvc-4 - ASP.NET MVC 4 路由不工作

asp.net-mvc - 在 ASP.NET MVC 中实现 "Remember Me"功能

c# - 大量自定义路由约束会减慢站点速度?