C# 使用不同页面处理选项卡中的子选项卡-asp.net mvc 3
我正在自学asp.NETMVC3。 我想创建一个用户帐户页面,其中有3个选项卡-说你的地址,你的照片和你的个人资料 第三个选项卡(YourProfile)中还有两个子选项卡。。。更改详细信息和DeactiaveAccount 它们都是动态页面,因此我希望将它们作为单独的页面保留 基本上,URL是:C# 使用不同页面处理选项卡中的子选项卡-asp.net mvc 3,c#,asp.net-mvc-3,tabs,C#,Asp.net Mvc 3,Tabs,我正在自学asp.NETMVC3。 我想创建一个用户帐户页面,其中有3个选项卡-说你的地址,你的照片和你的个人资料 第三个选项卡(YourProfile)中还有两个子选项卡。。。更改详细信息和DeactiaveAccount 它们都是动态页面,因此我希望将它们作为单独的页面保留 基本上,URL是: localhost/MyHome/YourAddress localhost/MyHome/YourPhotos localhost/MyHome/YourProfile/ChangePassword
localhost/MyHome/YourAddress
localhost/MyHome/YourPhotos
localhost/MyHome/YourProfile/ChangePassword
localhost/MyHome/YourProfile/DeactivateAccount
(根据要求,我已将通用的tab1、tab2等更改为现实场景中的某些内容)
我打算这样做:
public class MyHomeController : Controller
{
//
// GET: /MyHome/Tab1
public ActionResult Tab1()
{
return View();
}
//
// GET: /MyHome/Tab2
public ActionResult Tab2()
{
return View();
}
//
// GET: /MyHome/Tab3
public ActionResult Tab3()
{
return View();
}
}
如何处理您个人资料的子选项卡?如何在控制器中调用控制器
实现这一目标的最佳方式是什么
感谢您为控制器中的每个选项卡项提供单独的操作方法
public class MyHomeController : Controller
{
public ActionResult YourAddress()
{
return View();
}
public ActionResult YourPhotos()
{
return View();
}
public ActionResult YouProfile()
{
return VieW();
}
public ActionResult ChangePassword()
{
return View();
}
public ActionResult DeActivate()
{
return View();
}
}
对于子选项卡内容,请在global.asax中定义该路由
routes.MapRoute("ChangePass","YourProfile/ChangePassword",
new { controller="MyHome", action="ChangePassword" });
routes.MapRoute("DeActivate","YourProfile/DeActivate",
new { controller="MyHome", action="DeActivate" });
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional });
始终使用Url.Action
Html帮助程序方法来呈现操作方法的路径
<div id="tabs">
<ul>
<li><a href="@Url.Action("YourAddress","MyHome")">Address</a></li>
<li><a href="@Url.Action("YourPhotos","MyHome")">Photos</a></li>
</ul>
</div>
您能否提供一个真实的场景,这些选项卡将具有什么功能?请使用jquery。这里有一个例子@Tripping:如果功能完全不同,我会使用区域来判断。(例如:普通用户Ecom portal和管理员用户Ecom portal)谢谢@shyju。。。工作起来很有魅力,但当我点击链接时,我仍然不明白路由是如何工作的。那很好。。。我被Html.action弄糊涂了。我可以看到这个控制器变得很胖,不管怎样,是不是要破坏它?i、 e.ProfileController
,PhotoController
等@LukeHutton:完全同意。随着它的成长,我一定会把它分开。我坚信保持身材苗条。我试图向OP展示的要点是将这些方法保持在单独的服务层中,并仅从控制器操作调用它。