行 我有两个不同的控制器,比如controllerA和controllerB,现在来自controllerA 我必须将一些参数重定向到controllerB并在controllerA中写入
RedirectToAction("ControllerBAction", new { keywords = text });
如何在global.asax.cs中定义路由?
我是MVC的新手。感谢所有帮助
答案 0 :(得分:1)
首先,您没有 为此定义路线。如果保持原样,MVC将为您生成一个查询字符串,您的路线将如下所示(给定关键字文本为“abc”):
/ControllerBAction?keywords=abc
如果您不希望将关键字作为查询字符串的一部分,那么您可以定义如下路线:
routes.MapRoute("KeywordsRoute", "{controller}/{action}/{keywords}");
如果您这样做,请将放在默认路线之前。这将生成如下所示的URL:
/ControllerBAction/abc
<强>更新强> 如果您只想知道如何从一个控制器重定向到不同的控制器,那么您只需使用RedirectToAction()方法的不同重载,如下所示:
return RedirectToAction("ControllerBAction", "ControllerBName", new { keywords = text });