我是ASP.NET MVC的初学者。
我的页面有一个重用的局部视图,称为_Navigation。
如果用户位于“主页”中<a>
,则导航需要指向“#”字符,如果用户位于“服务”页面中,则导航的href需要指向其他网址,例如,“ www .mysite.com”。此菜单中的其他链接也会出现该错误。
我尝试执行以下操作
@if (ViewContext.RouteData.Values.ContainsValue("Services"))
{
@model MySite.Models.ServicesNavigation
}
else
{
@model MySite.Models.HomeNavigation
}
但是它说我只能有一个模型。
怎么解决呢?
您可以尝试使用Interface
。
public interface INavigation
{
//Your props here
}
public class ServicesNavigation : INavigation
{
}
public class HomeNavigation: INavigation
{
}
然后,您的视图可以为INavigation类型。
@model INavigation
在您的控制器中,根据您的条件,您可以传递所需的费用INavigation
。
.......
INavigation model;
if(conditionOneIsMet)
{
model = new ServicesNavigation();
}
else
{
model = new HomeNavigation();
}
return View(model);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句