Partial辅助方法通常在单独的文件中应用视图标记来帮助视图渲染视图模型的一部分。另一方面,Action是执行单独的控制器操作并显示结果。下面学步园小编来讲解下HTML.Action()和HTML.RenderAction()方法有哪些?
HTML.Action()和HTML.RenderAction()方法有哪些
示例目的,生成一个菜单
MenuModels,
[csharp]
publicclassMenu
{
publicList
}
publicclassMenuItem
{
publicstringText{get;set;}
publicstringUrl{get;set;}
}
在Controler中编写该Action,
[csharp]
[ChildActionOnly]
publicActionResultMyMenu()
{
MvcLearn.Models.Menum=newMvcLearn.Models.Menu();
List
items.Add(newMenuItem(){Text=“Baidu”,Url=“http://www.baidu.com”});
items.Add(newMenuItem(){Text=“Sina”,Url=“http://www.Sina.com”});
items.Add(newMenuItem(){Text=“IBM”,Url=“http://www.ibm.com”});
items.Add(newMenuItem(){Text=“Sohu”,Url=“http://www.sohu.com”});
m.Items=items;
returnPartialView(m);
}
HTML.Action()和HTML.RenderAction()方法有哪些
建立一个PartialView-MyMenu.cshtml
[csharp]
@modelMvcLearn.Models.Menu
@item.Text
@foreach(variteminModel.Items)
{
}
在页面中调用该Action生成视图:
[csharp]
@Html.Action(“MyMenu”)
Action和PartialView的名字要一样,这里都是MyMenu
以下是向Action传递参数的版本:
修改Action让它可以接受一个MenuItem参数,如果不为空的话,将其加入到菜单中
[csharp]
[ChildActionOnly]
publicActionResultMyMenu(MenuItemmi)
{
MvcLearn.Models.Menum=newMvcLearn.Models.Menu();
List
items.Add(newMenuItem(){Text=“Baidu”,Url=“http://www.baidu.com”});
items.Add(newMenuItem(){Text=“Sina”,Url=“http://www.Sina.com”});
items.Add(newMenuItem(){Text=“IBM”,Url=“http://www.ibm.com”});
items.Add(newMenuItem(){Text=“Sohu”,Url=“http://www.sohu.com”});
m.Items=items;
//这里,如果传入的参数不为空,则将Item加入到菜单中
if(mi!=null)
m.Items.Add(mi);
returnPartialView(m);
}
在前台调用的时候要传入参数进去:
[csharp]
@Html.Action(“MyMenu”,new{mi=newMvcLearn.Models.MenuItem(){Text=“haha”,Url=
以上就是关于“HTML.Action()和HTML.RenderAction()方法有哪些”的内容,希望对大家有用。更多资讯请关注学步园。学步园,您学习IT技术的优质平台!