Fla*_*nix 2 c# redirect redirecttoaction asp.net-mvc-4
我在一个项目中使用MVC4,C#和visual studio ultimate 2013.
我在提交表单后将用户重定向到索引页面.但是,此网页有2个标签,我想将用户重定向到第二个标签,而不是第一个标签.
我有一个Material带有Index动作的Controller ,它将用户发送到IndexView.
public ActionResult Index()
{
return View();
}
Run Code Online (Sandbox Code Playgroud)
这种观点是由两个部分景色,_Materials和_Packages.
@{
ViewBag.Title = "Index";
}
<div class="tabbable">
<ul class="nav nav-tabs">
<li class="active"><a href="#Materials" data-toggle="tab">Materials</a></li>
<li><a href="#Packages" data-toggle="tab">Packages</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="Materials">
@Html.Action("Materials", "Material")
</div>
<div class="tab-pane" id="Packages">
@Html.Action("Packages", "Package")
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
在应用程序的另一部分执行一系列操作后,我将用户重定向到/Material页面,再到第二个选项卡,但我不知道该怎么做!
目前我正在使用此代码,该代码始终重定向到第一个选项卡:
return RedirectToAction("Index", "Material");
Run Code Online (Sandbox Code Playgroud)
我该如何解决我的问题?
Chr*_*att 10
您不能使用类似的东西,RedirectToAction因为它没有任何附加URL片段的功能.你可以做的是使用Redirect只需要一个URL字符串的东西,然后使用URL帮助器仍然为你动态生成动作URL:
return Redirect(Url.Action("Index", "Material") + "#Package");
Run Code Online (Sandbox Code Playgroud)
换句话说,Url.Action将为您生成主URL并将其作为字符串返回.然后,您可以在最终重定向之前将片段附加到此字符串.