我正在尝试学习MVC,并且开始有一个艰难的过程。
routes.MapRoute(
"Test",
"Test/{stringInput}",
new { controller = "Test", action = "TestMethod", stringInput = "" }
);
未将stringInput
传递给控制器中的方法TestMethod
。它没有了。
不确定我缺少什么,看起来非常简单明了。此路线位于默认值之上。
答案 0 :(得分:3)
覆盖控制器的Execute方法,然后在其中放置一个断点,以便您可以看到请求上下文。其中一个属性是传入的键/值对。确保stringInput的键具有正确的值。
答案 1 :(得分:1)
确保您的控制器设置正确。它应该在文件夹
中Controllers/TestController.cs
并且控制器内应该是
public ActionResult TestMethod( string stringInput ) { return View(); }
它使用约定,因此您在路径中设置的命名需要与控制器的文件,方法和参数匹配。
要达到此目的的网址应为
/Test/TestMethod/MyStringInput
和“MyStringInput”将是变量stringInput的值。
答案 2 :(得分:0)
你确定路线是正在使用的路线吗?尝试将其移至路线列表的顶部以确保。