我在读如何MVC路由工作从Routing Basics in ASP.NET MVC。MVC路由的奇怪行为
它说
比{控制器}和{}行动等其他网址参数是 可以作为参数传递给选定操作方法传递。
所以我创建了一个参数名为controller
的string
类型的动作。
public ActionResult About(string controller, string test)
{
ViewBag.Message = "Your application description page.";
return View();
}
当我看的controller
价值,这是首页,这是我的控制器名称。
但是,当我试图从这两个方法访问,然后它返回null。 为什么?
Request.Params["controller"]
Request.QueryString["controller"]
如果不能从上面的方法采摘控制器参数的值,然后从那里得到控制器值。
我用这个动作链接来调用动作。
<a href="@Url.Action("About", "home", new { controller ="Hello" , test ="Amit"})">Check</a>
'controller value'是什么意思? – ihavenokia
@ihavenokia:它是名为关于 –
的参数名称我在一个小提琴中查看并测试了'Url.Action',链接帮助程序的URL翻译为'/ Home/About?test = Amit',解雇了'Hello'字符串(但是奇怪的是''Hello'在action方法中被成功捕获)。也似乎'Request.Params [“test”]'和'Request.QueryString [“test”]'作为'Amit'字符串。 –